tongchenkeji 发表于:2023-7-20 21:58:320次点击 已关注取消关注 关注 私信 【阿里云】AttributeError: 'ImageDraw' object has no attribut 已解决 暂停朗读为您朗读 AttributeError: ‘ImageDraw’ object has no attribute ‘textsize’ 「点点赞赏,手留余香」 赞赏 还没有人赞赏,快来当第一个赞赏的人吧! 海报 # AttributeError: 'ImageDraw' object has no attribut1
vohelonAM 2023-11-27 13:56:46 1 根据您提供的错误信息,这个错误是由于使用了 ImageDraw 对象的 textsize 属性而导致的。 在 PIL (Python Imaging Library) 中,ImageDraw 模块用于在图像上进行绘制操作。然而,ImageDraw 对象本身并没有 textsize 属性。因此,当你尝试使用 textsize 属性时,会出现 AttributeError 错误。 如果您想要获取文本的尺寸大小,可以使用 ImageFont 模块的 truetype 函数创建字体对象,然后利用该字体对象的 getsize 方法来获取文本的尺寸大小。 以下是一个示例代码: from PIL import Image, ImageDraw, ImageFont 创建一个画布 image = Image.new(“RGB”, (200, 200), “white”)draw = ImageDraw.Draw(image) 加载字体文件并创建字体对象 font = ImageFont.truetype(“arial.ttf”, 20) 绘制文本 text = “Hello World”text_size = draw.textsize(text, font=font)draw.text((0, 0), text, fill=”black”, font=font) 显示文本尺寸 print(“Text Size:”, text_size) 保存图像 image.save(“output.png”)请确保已经安装了 PIL(或者其 fork 版本 Pillow),并且有相应的字体文件供 truetype 函数使用。
根据您提供的错误信息,这个错误是由于使用了
ImageDraw
对象的textsize
属性而导致的。在 PIL (Python Imaging Library) 中,
ImageDraw
模块用于在图像上进行绘制操作。然而,ImageDraw
对象本身并没有textsize
属性。因此,当你尝试使用textsize
属性时,会出现AttributeError
错误。如果您想要获取文本的尺寸大小,可以使用
ImageFont
模块的truetype
函数创建字体对象,然后利用该字体对象的getsize
方法来获取文本的尺寸大小。以下是一个示例代码:
from PIL import Image, ImageDraw, ImageFont
创建一个画布
image = Image.new(“RGB”, (200, 200), “white”)
draw = ImageDraw.Draw(image)
加载字体文件并创建字体对象
font = ImageFont.truetype(“arial.ttf”, 20)
绘制文本
text = “Hello World”
text_size = draw.textsize(text, font=font)
draw.text((0, 0), text, fill=”black”, font=font)
显示文本尺寸
print(“Text Size:”, text_size)
保存图像
image.save(“output.png”)
请确保已经安装了 PIL(或者其 fork 版本 Pillow),并且有相应的字体文件供
truetype
函数使用。