我想了解更多有关在ReportLab中使用阿拉伯语的信息。我听说过fribidi和pyfribidi软件包,并尝试了一点(使用我得到的与OPEN ERP配置相关的文档之一),但不幸的是我没有得到最终结果。请帮我解决这个案子。
此致 Soorjith P
答案 0 :(得分:2)
我们使用python-bidi http://github.com/mksoft/python-bidi进行RTL支持,使用Arabic Writer http://wiki.github.com/hasenj/arabic-writer进行阿拉伯语支持。
import unicodedata
from bidi.algorithm import get_display
import arabic_rtlize
def drawText(canvas, x,y, text):
wrkText=text
isArabic=False
isBidi=False
for c in wrkText:
cat=unicodedata.bidirectional(c)
if cat=="AL" or cat=="AN":
isArabic=True
isBidi=True
break
elif cat=="R" or cat=="RLE" or cat=="RLO":
isBidi=True
if isArabic:
wrkText=arabic_rtlize.forms.fuse(wrkText)
wrkText=arabic_rtlize.process.shape(wrkText)
if isBidi:
wrkText=get_display(wrkText)
canvas.drawString(x, y, wrkText)
答案 1 :(得分:0)
قمنابجمعالتعديلاتاللازمةلدعماللغةالعربيةعلىنظامأوبنإيآربيفيملفتعديل(patch)واحد。 يحويهذاالرابطتعليماتمفصلةلكيفيةتطبيقهذهالتعديلاتعلىدبيانلينكس。
تحلهذهالتعديلاتمشكلتين:
استخداماللغةالعربيةفيواجهةالاستخداملعميلويب(web client): بعدتطبيقهذهالتعديلات,ستظهرجميععناصرالواجهةالمترجمةباللغةالعربيةحيناختياركللغةالعربيةكلغةالمستخدم。
عرضالحروفالعربيةبشكلصحيحفيالتقارير(PDF)。
مجتمعأوبنإيآربيالعربي
我们收集了OpenERP中正确的阿拉伯语支持所需的补丁,并将它们打包成一个补丁。
该补丁及其应用说明发布于: https://bitbucket.org/openerparabia/openerp-arabic-support
补丁解决了两个问题:
将Web客户端用户界面语言设置为阿拉伯语 标准的OpenERP安装将无法加载所有翻译:翻译的短语比实际使用的要多得多。此修补程序允许使用所有翻译。 (有关详细信息,请参阅https://bugs.launchpad.net/openobject-server/+bug/1019804。)
在PDF报告中显示阿拉伯字符。