Я недавно установил PIL.Но я нахожу:
- Я не могу загрузить любую библиотеку шрифтов, используя "ImageFont.truetype (" xxx.ttc ", 50)" и т. П.
- Когда я рендеринг некоторыхтекст в изображение, и текст в Unicode, содержащий китайские символы, я получаю UnicodeEncodeError вроде:
UnicodeEncodeError: кодек «ascii» не может кодировать символ u '\ u6211' в позиции 0:порядковый номер не в диапазоне (128)
Сценарий проблемы:
# -*- coding: utf-8 -*-
import sys
from PIL import Image
import ImageFont, ImageDraw
text = sys.argv[1]
if not isinstance(text, unicode):
text = text.decode('gbk')
filename = sys.argv[2]
image = Image.new("RGBA", (100, 100), (255,255,255))
usr_font = ImageFont.truetype("simsun.ttc", 50) #In fact, it can't load any font lib.
d_usr = ImageDraw.Draw(image)
d_usr = d_usr.text((10, 10), text, fill = "blue", font=usr_font) #error when text is Chinese
image.save(filename)
Моя ОС Windows7 с установленным Python 2.5.Может кто-нибудь мне помочь?Заранее спасибо!