Pillow ImageDraw.Draw.textsize 抛出'str'对象没有属性'getsize'



在Pillow中,我试图获得文本的大小,因此我可以知道如何将其放置在图像中。当尝试做以下事情时,我不断得到错误"AttributeError: 'str'对象没有属性'getsize'"当调用d.textsize(text, font=font_mono).

我做错了什么?

from PIL import Image, ImageDraw
txt_img = Image.new("RGBA", (320, 240), (255,255,255,0))  # make a blank image for the text, initialized to transparent text color
d = ImageDraw.Draw(txt_img)
text = "abcabc"
font_mono="Pillow/Tests/fonts/FreeMono.ttf"
font_color_green = (0,255,0,255)
txt_width, _ = d.textsize(text, font=font_mono)

font需要是ImageFont对象:

from PIL import Image, ImageDraw, ImageFont
txt_img = Image.new("RGBA", (320, 240), (255,255,255,0))
d = ImageDraw.Draw(txt_img)
text = "abcabc"
font_mono="Pillow/Tests/fonts/FreeMono.ttf"
font_color_green = (0,255,0,255)
font = ImageFont.truetype(font_mono, 28)
txt_width, _ = d.textsize(text, font=font)

最新更新