使用PIL绘制一个矩形并在其中添加文字。

20 浏览
0 Comments

使用PIL绘制一个矩形并在其中添加文字。

我想要在一个矩形内绘制一个文本,这是我的代码的一部分,但有点晦涩:

from PIL import Image
from PIL import ImageFont
from PIL import ImageDraw
from PIL import ImageEnhance
  source_img = Image.open(file_name).convert("RGB")
  img1 = Image.new("RGBA", img.size, (0,0,0,0))
  draw1 = ImageDraw.Draw(watermark, "RGBA")
  draw1.rectangle(((0, 00), (100, 100)), fill="black")
  img_rectangle = Image.composite(img1, source_img, img1)
  draw2 = ImageDraw.Draw(img1, "RGBA")
  draw2.text((20, 70), "something123", font=ImageFont.truetype("font_path123"))
  Image.composite(img1, source_img, img1).save(out_file, "JPEG")

它确实绘制了两者,但它们是分开的:文本位于矩形下方。而我想要在矩形内部绘制文本。

我该如何做?我是否必须将它们合成在一起?

0