我正在尝试使用 python(准确地说是 PIL)在图像上绘制某些 unicode 字符。
使用以下代码,我可以生成具有白色背景的图像:
('entity_code' 被传递给方法)
size = self.font.getsize(entity_code)
im = Image.new("RGBA", size, (255,255,255))
draw = ImageDraw.Draw(im)
draw.text((0,6), entity_code, font=self.font, fill=(0,0,0))
del draw
img_buffer = StringIO()
im.save(img_buffer, format="PNG")
我尝试了以下方法:
('entity_code' 被传递给方法)
img = Image.new('RGBA',(100, 100))
draw = ImageDraw.Draw(img)
draw.text((0,6), entity_code, fill=(0,0,0), font=self.font)
img_buffer = StringIO()
img.save(img_buffer, 'GIF', transparency=0)
但是,这无法绘制 unicode 字符。看起来我最终得到了一个空的透明图像:(
我在这里想念什么?有没有更好的方法在 python 中的透明图像上绘制文本?