乌尔都字体的反向渲染
我正在一个基于乌尔都语的项目上,使用的是Ubuntu系统,编程语言是Python,基本上已经完成了我的任务。
但是遇到的问题是,乌尔都语的文本显示是反向的。
比如说,考虑这个词 کام
(意思是工作),它由三个字母组成:
ک
,
ا
, 和
م
但是输出的结果却是反过来的,变成了 ماک
,由三个字母组成:
م
,
ا
, 和
ک
当我把这个文本复制到Open Office,或者在Firefox中打开生成的XML文件时,结果是完全正确的。
我使用的是Python 2.6的IDLE,在Windows平台上运行得很好,这明显说明问题不在IDLE上。我正在使用TKINTER这个图形界面库。
这个问题该怎么解决呢?
2 个回答
-1
使用一些好用的工具包,比如PyQt、PyGTK或者wxPython,这些都不错。
0
我之前也遇到过类似的问题,涉及到阿拉伯语。Tkinter是一个用来创建图形界面的Python工具,但可惜的是,它对双向语言(像阿拉伯语这样的语言)没有支持。
我的解决办法是换用wxPython。wxPython的好处是,无论在哪个平台上运行,你的应用看起来都像是本地的应用。
关于Tk不支持双向语言的更多信息,可以在这里找到:http://easygui.wordpress.com/2010/02/03/easygui-and-unicode/