我尝试使用Python PIL在图像上绘制一个字符。使用ImageDraw.Draw.text()函数,xy参数指向文本的左上角。但是我将xy设置为(0,0),角色没有画出图像的左上角。
from PIL import ImageFont, ImageDraw, Image
imageSize=(40,40)
mage = Image.new("RGB", imageSize, (0,0,0))
draw = ImageDraw.Draw(image)
txt = "J"
font = ImageFont.truetype("ANTQUAB.ttf",35)
draw.text((0,0), txt, font=font)
为什么呢?
答案 0 :(得分:0)
此代码:
from PIL import ImageFont, ImageDraw, Image
imageSize=(100,100)
image = Image.new("RGB", imageSize, (0,0,0))
draw = ImageDraw.Draw(image)
txt = "J"
font = ImageFont.truetype("ARIAL.ttf",35)
draw.text((0,0), txt, font=font)
image.show()
生成这个:
这不是你所期待的吗?
答案 1 :(得分:0)
xy
draw.text()
参数是文本的左上角(http://pillow.readthedocs.io/en/3.1.x/reference/ImageDraw.html),但字体可能在文本周围有一些填充,尤其是垂直。我所做的是将元组的y
部分设置为负数(可能在-5左右?)并且它对我有效。