python 枕头で背景に色をつけて内容を回転させる

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 枕头で背景に色をつけて内容を回転させる相关的知识,希望对你有一定的参考价值。

# encoding:utf-8
import math
from PIL import Image

# 回転率を取得
rotate=45

# オリジナル画像のサイズを取得し長辺の2倍のサイズの白い背景の正方形画像を用意
img = Image.open(base_img)
width, height = img.size
tmp_size = (width if width > height else height) * 2
img_b = Image.new("RGB", (tmp_size, tmp_size), (255, 255, 255))

# 背景に用意した背景の中央に画像を配置
posx, posy = math.floor((tmp_size - width) / 2), math.floor((tmp_size - height) / 2)
img_b.paste(img, (posx, posy))

# 画像を回転(白い背景に貼り付けてから回転させないとデフォルトの黒い背景が見えてしまうので仕方なく手間をかける)
img_b = img_b.rotate(rotate)

# 中心座標を計算して、本来想定しているサイズで切り出す
c =  math.floor(tmp_size / 2) # 背景の中心点の特定(背景は正方形なのでX,Y共に同じ値となる)
h_w = math.floor(width / 2) # 元画像の幅の半分
h_h = math.floor(height / 2) # 元画像の高さの半分

# 切り取り位置を元画像のサイズに合うように中心から特定
left, upper, right, lower = c - h_w, c - h_h, c + h_w, c + h_h

# 画像を切り出す
img_b = img_b.crop((left, upper, right, lower))

# 結果を保存
img_b.save(rotate_img, quality=100, dpi=img.info['dpi'])

以上是关于python 枕头で背景に色をつけて内容を回転させる的主要内容,如果未能解决你的问题,请参考以下文章

css スマホを回転させても文字サイズが変わらないように

markdown コミットにタグをつける

sh EC2からEIPをつける

php タイムスタンプのクエリをつける

css 背景图像で,横幅100%で縦横比を保ったまま表示させる。

markdown has_manyに依赖:destroyをつけたときの挙动