4

我正在使用 python 脚本来为预先创建的图像创建输入数据。为此,我正在使用 Python 的 PILlon,并且正在 Windows 7 上进行开发。

我正在努力使用函数 draw.text(),我在其中输入位置为 (0,0)。不幸的是,文本被定位在一堆像素下方。

首先,我认为这是我的错误,我在网上搜索并找到页面http://tools.jedutils.com/tools/center-text-image,其中(居中,但问题相同)图像的代码是那:

def create_image(font_name, font_size, font_color, width, height, back_ground_color, text, image_filter=None):

font  =  ImageFont.truetype ( font_path + font_name + ".ttf", font_size )

im  =  Image.new ( "RGB", (width,height), back_ground_color )
draw  =  ImageDraw.Draw ( im )
text_x, text_y = font.getsize(text)
x = (width - text_x)/2
y = (height - text_y)/2
draw.text ( (x,y), text, font=font, fill=font_color )

#if filter: #i don't need given filter
#    real_filter = filter_dict[image_filter]
#    im = im.filter(real_filter)
im.save ( "runaway_emboss.jpg" )

执行此代码后,我鼓励我遇到与我自己的脚本相同的问题。后来我认为可能是字体的问题,所以我从 Windows Fonts 文件夹中复制了一个到我的 *.py 文件位置,我尝试从网上下载字体。一切都有相同的结果。

问题图片:

坏:坏的 好:好的

你有什么想法,问题的根源是什么?

4

0 回答 0