我正在使用Pillow 3.1.1图像库和Python 3.5.1。
我试图使用Pillow在图像上绘制字体。但结果看起来非常丑陋和不可接受。
第一个例子:看起来像字体不是抗锯齿的。但是文档在别名字体上绝对没有任何内容。我试图做一些更改(例如设置fonttype
),但文本看起来仍然很糟糕。
1st example
第二个例子。有时字符会相互叠加。而且我也不知道如何修复它。 2nd example
我对自己的经历非常沮丧。是否有可能在Pillow中修复别名问题,或者我应该看看ImageMagick那边?
别名问题是我主要担心的问题,我不能使用这样渲染的字体。
感谢您的关注!
代码示例:
from PIL import Image, ImageDraw, ImageFont
DEFAULT_OFFSET = (100, 160, )
def draw_text(image, text):
base = Image.open(image).convert('RGBA')
txt_image = Image.new('RGBA', base.size, (255, 255, 255, 0))
ttf = get_font()
fnt = ImageFont.truetype(ttf, 40)
d = ImageDraw.Draw(txt_image)
# just return some string in format 'blah-blah\nblah-blah'
multiline = generate_multiline(txt_image, text)
d.multiline_text(DEFAULT_OFFSET, multiline, align='left', font=fnt, fill=(40, 40, 40, 200))
out = Image.alpha_composite(base, txt_image)
out.show()