/ / Pillowは私のテキストパラメータをUnicodeか文字列にしますか? - python、unicode、python-imaging-library、python-2.x

ピローは私のテキストパラメータをUnicodeや文字列にしたいのですか? - python、unicode、python-imaging-library、python-2.x

問題の機能:

PIL.ImageDraw.Draw.text(xy, text, fill=None, font=None, anchor=None)

問題はかなり標準的なものです...ちんぷんかんぷん:

ここに画像の説明を入力

今のところ、上記のテキスト描画関数に文字列(utf-8)を実行していますが、これらすべての変わった文字が表示されます。ただし、印刷しただけでは、文字は正しく表示されます。

ここに画像の説明を入力

代わりにUnicodeオブジェクトを渡すべきですか?

回答:

回答№1は2

これは、pillow-4.2.1を使用したPython 3.6.2および2.7.13で正しく機能します(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()

出力:

ここに画像の説明を入力