Pillow 是否希望我的文本参数是 unicode 或字符串?
Does Pillow want my text parameters to be unicode or strings?
有问题的函数:
PIL.ImageDraw.Draw.text(xy, text, fill=None, font=None, anchor=None)
这个问题很标准...胡言乱语:
现在,我正在 运行 一个字符串 (utf-8) 到上面的绘制文本函数中,但它给出了所有那些奇怪的字符。但是,如果我只是打印它,它可以很好地显示字符。
我应该传递一个 Unicode 对象吗?
这在 Python 3.6.2 和 2.7.13 与 pillow-4.2.1 上正常工作(字符串是 Python 3.x 中的默认 Unicode)。中文没有使用默认字体显示,但 Arial MS Unicode 可以。
#coding:utf8
from PIL import Image,ImageDraw,ImageFont
im = Image.new('1',(100,100))
draw = ImageDraw.Draw(im)
font = ImageFont.truetype(font='ARIALUNI.TTF',size=20)
draw.text((0,0),u'马克','white',font=font)
im.show()
输出:
有问题的函数:
PIL.ImageDraw.Draw.text(xy, text, fill=None, font=None, anchor=None)
这个问题很标准...胡言乱语:
现在,我正在 运行 一个字符串 (utf-8) 到上面的绘制文本函数中,但它给出了所有那些奇怪的字符。但是,如果我只是打印它,它可以很好地显示字符。
我应该传递一个 Unicode 对象吗?
这在 Python 3.6.2 和 2.7.13 与 pillow-4.2.1 上正常工作(字符串是 Python 3.x 中的默认 Unicode)。中文没有使用默认字体显示,但 Arial MS Unicode 可以。
#coding:utf8
from PIL import Image,ImageDraw,ImageFont
im = Image.new('1',(100,100))
draw = ImageDraw.Draw(im)
font = ImageFont.truetype(font='ARIALUNI.TTF',size=20)
draw.text((0,0),u'马克','white',font=font)
im.show()
输出: