枕头 ImageDraw.Draw.textsize 扔 'str' 对象没有属性 'getsize'

Pillow ImageDraw.Draw.textsize throws 'str' object has no attribute 'getsize'

在 Pillow 中,我正在尝试获取文本的大小,以便我知道如何将其放置在图像中。尝试执行以下操作时,调用 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)