使用Image模块(python)绘制希伯来文本和图像

时间:2010-02-02 08:52:03

标签: python image hebrew bidirectional

这是我已经问过的一个问题,有几个得到答案,但问题仍然存在。 当我尝试使用Image模块用希伯来语写一个图像时,我得到了一些其他(ascii ??)字母而不是希伯来字母。如果我转换为unicode或ascii我得到一个它不支持的错误。我在这里引用了一个代码,用我的中文做了我想要的代码:

import sys

import Imag

import ImageDraw

import ImageFont

import _imaging

txt = '你好,世界!'

font = ImageFont.truetype('c:/test/simsun.ttc',24)

im = Image.new("RGBA",(300,200),(0,0,0))

draw = ImageDraw.Draw(im)

#draw.text( (0,50), u'你好,世界!', font=font)

draw.text( (0,50), unicode(txt,'UTF-8'), font=font)

然后我收到一个错误:ImportError:

  

未安装_imagingft C模块。

当我尝试使用standrad希伯来字体'arial.ttf'(使用希伯来语字符串)时也是如此。你可以看到我已经导入了_imaging succsefuly,所以问题不在于effbot.org的建议。

似乎问题出在Imagefont.truetype(...)上。

任何帮助都非常适合

2 个答案:

答案 0 :(得分:3)

听起来PIL是在没有FreeType支持的情况下构建的。安装FreeType开发文件并重新生成PIL。

答案 1 :(得分:1)

问题是PIL 1.1.7与Windows XP不兼容。相同的代码在linux或XP下运行良好,但使用PIL 1.1.6 mystory解决了