在Odoo8.0中,可以对报表字体进行自定义,避免了中文字体乱码的情况。

在测试安装中,在服务器端安装文泉译的字体,但在配置管理中,重新加载后并没有显示出已安装的字体,经查看源码,odoo在加载字体时,只加载了后缀为ttf的字体,而文泉译的字体后缀名为ttc,所以会显示不出来。

手工修改openerp/report/render/rml2pdf/customfonts.py文件,在搜索路径列表TTFSearchPath[]中增加文泉译字体路径 '/usr/share/fonts/truetype/wqy',并在list_all_sysfonts()方法中,将搜索表达式 '*.[Tt][Tt][Ff]'改为 '*.[Tt][Tt][Ffc]'。

重新启动odoo服务器,在配置中重新加载字体,就可以看到已经安装好的中文字体列表,选择正确的中文字体后,重新打印报表,所以中文字体显示OK。