Oecn_base_fonts 使用说明(解决v.7.0,v6.1,V6.0.x的PDF中文字体方框问题,支持CJK语言)
-
[quote author=mrshelly link=topic=2791.msg9409#msg9409 date=1330838878]
不错....
要是把 中文字体名的问题一并解决了. 就完美了....
[/quote]
[size=12pt]我这里真是举步维艰,按照上面的方法试了一次,大功告成。这几天重装了一次,再做以上设置就不行了。设置是做了,也生效了。出来的字还是黑方块哦[/size] -
[quote author=大柘 link=topic=2791.msg11450#msg11450 date=1341040363]
在winxp上装上没效果,报表还是乱码
[/quote]
重启也没有用 要把另一个addon—— base_report_cn 一起装上才行。 两个addons 缺一不可。 -
[quote author=大柘 link=topic=2791.msg11460#msg11460 date=1341186896]
重启过了,安装时并没有提示替换啊。
[/quote]
是向导没弹出来?,请在 设置->设置向导 那里选择 “配置PDF替换规则”
[quote author=luzhuang1967 link=topic=2791.msg11500#msg11500 date=1341595071]
[quote author=大柘 link=topic=2791.msg11450#msg11450 date=1341040363]
在winxp上装上没效果,报表还是乱码
[/quote]
重启也没有用 要把另一个addon—— base_report_cn 一起装上才行。 两个addons 缺一不可。
[/quote]
不是的,这是两个不同的模块,base_report_cn是以前的版本,里面已经包含字体(有bug就是表头的字体不替换)。而oecn_base_font是使用你系统的字体(更灵活)。 -
重启也没有用 要把另一个addon—— base_report_cn 一起装上才行。 两个addons 缺一不可。
[/quote]
不是的,这是两个不同的模块,base_report_cn是以前的版本,里面已经包含字体(有bug就是表头的字体不替换)。而oecn_base_font是使用你系统的字体(更灵活)。
[/quote]
是,这是两个不同的模块。但是我的这台电脑很奇怪,装了oecn_base_font就是死活不工作。非要把base_report_cn也装上才行。而且,只装base_report_cn也不行,一定要把两个都装了才行。也不知道是不是W7的问题。我的是英文版W7。
就像我以前遇到的备份问题,修改路径也没用,只好把PostgreSQL整个复制到server目录下才能做备份。很奇怪的电脑 -
[attachimg=2][attachimg=2][quote author=Joshua link=topic=2791.msg11503#msg11503 date=1341650105]
你是英文版Win7 ,但是应该系统也会有中文字体吧,我猜是你配置替换的字体不是中文?要不你把的配置替换的字体截图出来我们看看。
[/quote]
[size=18pt]我用的字体肯定是中文 微软雅黑 特意新建了一个数据库 从头配置了一回 依旧是黑框[/size]
[attachimg=1] -
3.CJK warp是中文字体换行处理,默认勾选。Original Fonts是系统里面需要用到的字体(一共有6种,一般需要全部替换掉),Replace Fonts 是你想替换成的字体(取自于OpenERP Server的系统内)。
进行到这步时报告以下错误。
=================错误报告=====================
您的 OpenERP 版本没有包含支持。支持与维护服务在此处可以购买:模型”%s“的字段.
OpenERP Server Error
Client Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/addons/web/common/http.py", line 180, in dispatch
response["result"] = method(controller, self, **self.params)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/addons/web/controllers/main.py", line 1204, in load
return self.fields_view_get(req, model, view_id, view_type, toolbar=toolbar)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/addons/web/controllers/main.py", line 1086, in fields_view_get
fvg = Model.fields_view_get(view_id, view_type, context, toolbar, submenu)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/addons/web/common/openerplib/main.py", line 250, in proxy
args, kw)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/addons/web/common/openerplib/main.py", line 117, in proxy
result = self.connector.send(self.service_name, method, *args)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/addons/web/common/http.py", line 611, in send
raise fault
Server Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/addons/web/common/http.py", line 592, in send
result = openerp.netsvc.dispatch_rpc(service_name, method, args)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/netsvc.py", line 360, in dispatch_rpc
result = ExportService.getService(service_name).dispatch(method, params)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/service/web_services.py", line 586, in dispatch
res = fn(db, uid, *params)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/osv.py", line 167, in execute_kw
return self.execute(db, uid, obj, method, *args, **kw or {})
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/osv.py", line 121, in wrapper
return f(self, dbname, *args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/osv.py", line 176, in execute
res = self.execute_cr(cr, uid, obj, method, *args, **kw)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/osv.py", line 164, in execute_cr
return getattr(object, method)(cr, uid, *args, **kw)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/orm.py", line 2153, in fields_view_get
xarch, xfields = self.__view_look_dom_arch(cr, user, result['arch'], view_id, context=ctx)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/orm.py", line 1793, in __view_look_dom_arch
fields_def = self.__view_look_dom(cr, user, node, view_id, False, fields, context=context)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/orm.py", line 1742, in __view_look_dom
fields.update(self.__view_look_dom(cr, user, f, view_id, in_tree_view, model_fields, context))
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/orm.py", line 1742, in __view_look_dom
fields.update(self.__view_look_dom(cr, user, f, view_id, in_tree_view, model_fields, context))
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/orm.py", line 1742, in __view_look_dom
fields.update(self.__view_look_dom(cr, user, f, view_id, in_tree_view, model_fields, context))
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/orm.py", line 1661, in __view_look_dom
xarch, xfields = relation.__view_look_dom_arch(cr, user, f, view_id, ctx)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/orm.py", line 1792, in __view_look_dom_arch
fields = self.fields_get(cr, user, None, context)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/orm.py", line 3357, in fields_get
res[f] = fields.field_to_dict(self, cr, user, field, context=context)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/osv/fields.py", line 1587, in field_to_dict
res['selection'] = field.selection(model, cr, user, context)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/addons/oecn_base_fonts/oecn_base_fonts_config.py", line 37, in __system_fonts_get
return self._system_fonts_get(cr, uid)
File "/usr/local/lib/python2.7/dist-packages/openerp-6.1_20120710_233320-py2.7.egg/openerp/addons/oecn_base_fonts/oecn_base_fonts_config.py", line 58, in _system_fonts_get
ff.search()
File "/usr/lib/python2.7/dist-packages/reportlab/lib/fontfinder.py", line 242, in search
f.timeModified = rl_getmtime(f.fileName)
File "/usr/lib/python2.7/dist-packages/reportlab/lib/utils.py", line 477, in rl_getmtime
if os_path_isfile(pn) or _isFSD or loader is None: return os_path_getmtime(pn)
File "/usr/lib/python2.7/genericpath.py", line 54, in getmtime
return os.stat(filename).st_mtime
OSError: [Errno 2] 没有那个文件或目录: '/usr/share/fonts/truetype/ttf-japanese-gothic.ttf'
=====================================================================
但搜索了一下,发现有这个字体
“/var/lib/dpkg/alternatives/ttf-japanese-gothic.ttf
/usr/share/fonts/truetype/ttf-japanese-gothic.ttf
/etc/alternatives/ttf-japanese-gothic.ttf
”