Odoo 中文社区

    • 注册
    • 登录
    • 搜索
    • 版块
    • 标签
    • 热门
    • 用户
    • 群组

    Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn

    由于系统升迁的原因,本论坛部分较早期的内容存在格式和链接损坏失效的问题,并非本论坛系统本身的缺陷,望谅解

    本社区没有维护任何QQ群讨论组,任何与本社区同名的QQ群讨论组的言论与本社区无关!

    开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

    如果您登录系统碰到问题,请在微信公众号留言:

    关于OE报表中文黑方块的最官方解决方案.

    Odoo 开发与实施交流
    5
    7
    7489
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • mrshelly
      mrshelly 最后由 编辑

      最近研究报表. 在解决中文黑方块问题时, 想在官方的 trml2pdf 中加入 关于 l10n_cn 字体修正部分.

      最后发现 在 原 trml2pdf 代码中, 早已有了关于 TTF 字体的支持选项. 然后 分析源代码得出 关于 中文报表 黑方块 最权威的官方解决方案就是.

      在你生成的 rml 的 <document>节中添加(这个可以修改 OE 的 rml_template 这个需要哪位大大继续深入研究)

      <br /><br />&lt;docinit&gt;<br />	&lt;registerFont fontName=&quot;SimHei&quot; fontFile=&quot;simhei.ttf&quot; /&gt;<br />	&lt;registerFont fontName=&quot;SimSun&quot; fontFile=&quot;simsun.ttc&quot; /&gt;<br />&lt;/docinit&gt;<br /><br />
      



      其中
      fontName 就是你 rml 中使用的字体名.  fontFile 即为 字体对应的 TrueType 字体文件名.
      而 字体文件, 你可以放到你的 openerp-server 的很多可选文件夹中.

      具体搜索的文件夹在 reportLab 模块 的 rl_config.py 文件中 记录. 即:

      <br /><br /># places to look for TT Font information<br />TTFSearchPath = (<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;c:/winnt/fonts&#039;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;c:/windows/fonts&#039;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;/usr/lib/X11/fonts/TrueType/&#039;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;%(REPORTLAB_DIR)s/fonts&#039;,&nbsp; &nbsp; &nbsp; #special<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;%(REPORTLAB_DIR)s/../fonts&#039;,&nbsp;  #special<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;%(REPORTLAB_DIR)s/../../fonts&#039;,#special<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;%(HOME)s/fonts&#039;,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;  #special<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #mac os X - from<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; #http://developer.apple.com/technotes/tn/tn2024.html<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;~/Library/Fonts&#039;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;/Library/Fonts&#039;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;/Network/Library/Fonts&#039;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &#039;/System/Library/Fonts&#039;,<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; )<br />
      



      这样, 你就可以在你的rml中使用你自己的 TrueType 字体了.

      1 条回复 最后回复 回复 引用 0
      • wjfonhand
        wjfonhand 最后由 编辑

        l10n_cn 是替换系统中已有的报表字体以解决中文现实问题。
        您的方案适用于自己新开发的报表。
        当然,一个一个改原有的报表RML... 也行。

        不过你的方案就让新开发报表不必局限于宋体和黑体两种中文字体了,非常有意义!

        GoodERP -- Odoo China fork

        1 条回复 最后回复 回复 引用 0
        • O
          oldrev 最后由 编辑

          还是用程序检测一下 windows 的目录,别硬编码 "c:/windows"

          1 条回复 最后回复 回复 引用 0
          • O
            oldrev 最后由 编辑

            或者做个oe模块,在 init.py 里就刷流氓把 rl_config.py 的东西替换掉

            1 条回复 最后回复 回复 引用 0
            • J
              jinxiu89163.com 最后由 编辑

              顺藤摸瓜,找到了 centos 在这里¨/usr/lib/python2.7/site-packages/openerp-6.1_20120709_233338-py2.7.egg/openerp/report/render/rml2pdf¨

              1 条回复 最后回复 回复 引用 0
              • M
                matrowang 最后由 编辑

                谢谢分享,该加精华

                1 条回复 最后回复 回复 引用 0
                • First post
                  Last post