Odoo 中文社区

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

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

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

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

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

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

    用v6无法打印中文汉字 (reportlab的问题)

    Odoo 安装指南
    9
    27
    34414
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • E
      elicoidal 最后由 编辑

      你们好
      我安装了一些次OPENERPV6:用英文没文题但是我要打印中文汉字。在openerp里面,我看得了它们可是打印quotation的时候,只有白色的四方。
      在我的服务器里面有中文的fonts。有没有另外特别的方法所以我可以打印中文?
      谢谢你们的帮助
      ERIC

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

        1 你可以安装 l10n_cn 模块: http://code.google.com/p/hornerp/source/browse/#svn%2Ftrunk%2Faddons%2Fl10n_cn


        2 在你的 .rml 文件中, 添加 registerFont  ref: [检测到链接无效,已移除]

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

          你好,
          谢谢你的快回答
          你的方法可以的但是可能一点麻烦因为你应该修改所有的reports。现在我用base_report_unicode module。这样不要修改report但是很慢。
          其实现在不太清楚哪一个方法最好。。。
          ERIC

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

            我推荐使用 添加 registerFont 的方法... 因为这是一次性的... 

            必要时, 可以自己写一个 script 去刷新所有的 rml 文件以及 update 到 PostgreSQL 数据库

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

              Eric, 请下载这个模块 [检测到链接无效,已移除] br />内容与shelly推荐的l10n_cn是一样的,只是6.0里已经有模块使用了l10n_cn这个名字,恐怕会引起混淆。
              至于.rml文件我记得不需要改的,此模块的功能是替换原有pdf文件的字体。
              根据我在6.0上半天的测试,由于官方改变了公司设置里report_header和footer的字体,所以页眉页脚还是乱码。但估计是很容易调整的

              GoodERP -- Odoo China fork

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

                Jeff你好
                你的模块跟report_base_unicode差不多。用mrshelly的方法好像不够但是用report base的模块行。 我觉得report_header和footer的字体不重要因为每一个公司有自己的。
                其实我以为v6可以管理unicode但是好像还要加入特别的模块。真倒霉

                eric

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

                  其实 最蛋疼的问题 是 中文字体名

                  EP: 宋体 === SimSun

                  1 条回复 最后回复 回复 引用 0
                  • digitalsatori
                    digitalsatori 管理员 最后由 编辑

                    理论上原来的base_report_cn还是能用的,只是执行效率不够高。
                      V6去年引入了customfonts模块以方便rml-pdf报表的字体定义,当时我写了一个很简单的脚本测试了一下,现稍做修改附在附件中。稍后传到launchpad,大家共同维护
                    另,表头,表尾的字体在系统管理->公司->公司中定义

                    [EDIT] 字体文件太大,附件放不下, [检测到链接无效,已移除]

                    【上海先安科技】(tony AT openerp.cn)

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

                      OE 6.0 使用了以下自定义字体。

                      CustomTTFonts = [ ('Helvetica',"DejaVu Sans", "DejaVuSans.ttf", 'normal'),
                              ('Helvetica',"DejaVu Sans Bold", "DejaVuSans-Bold.ttf", 'bold'),
                              ('Helvetica',"DejaVu Sans Oblique", "DejaVuSans-Oblique.ttf", 'italic'),
                              ('Helvetica',"DejaVu Sans BoldOblique", "DejaVuSans-BoldOblique.ttf", 'bolditalic'),
                              ('Times',"Liberation Serif", "LiberationSerif-Regular.ttf", 'normal'),
                              ('Times',"Liberation Serif Bold", "LiberationSerif-Bold.ttf", 'bold'),
                              ('Times',"Liberation Serif Italic", "LiberationSerif-Italic.ttf", 'italic'),
                              ('Times',"Liberation Serif BoldItalic", "LiberationSerif-BoldItalic.ttf", 'bolditalic'),
                              ('Times-Roman',"Liberation Serif", "LiberationSerif-Regular.ttf", 'normal'),
                              ('Times-Roman',"Liberation Serif Bold", "LiberationSerif-Bold.ttf", 'bold'),
                              ('Times-Roman',"Liberation Serif Italic", "LiberationSerif-Italic.ttf", 'italic'),
                              ('Times-Roman',"Liberation Serif BoldItalic", "LiberationSerif-BoldItalic.ttf", 'bolditalic'),
                              ('Courier',"FreeMono", "FreeMono.ttf", 'normal'),
                              ('Courier',"FreeMono Bold", "FreeMonoBold.ttf", 'bold'),
                              ('Courier',"FreeMono Oblique", "FreeMonoOblique.ttf", 'italic'),
                              ('Courier',"FreeMono BoldOblique", "FreeMonoBoldOblique.ttf", 'bolditalic'),]

                      系统需要在字体文件夹能搜索到上面列出的字体文件,最简单的方法是拷贝simsun.ttf 文件到字体文件夹,然后分别改名为“DejaVuSans.ttf”,
                      “DejaVuSans-Bold.ttf”,“DejaVuSans-Oblique.ttf”,“DejaVuSans-BoldOblique.ttf”。这样,全部报表都可以正常使用中文了。

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

                        搭车问一下,产品的stock level forest报表中,右侧的产品名称是什么字体?
                        ls诸位的方法我都试了,其他位置全部没有问题了,就是这里还是乱码。。。

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

                          Stock Level Forecast 报表 与一般的 rml pdf 报表不一样..

                          它是 graph 的报表. 是由 pychart 直接演染的.  要支持中文, 可能要参阅 pychart 的相关文档(我记得我以前好象测试过, 没有把 pychart 的中文问题搞定)

                          具体的 请查看 addons\stock\report\product_stock.py 以及  addons\stock\report\stock_graph.py 文件.

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

                            校长的文件下载后,直接放到ADDONS下,OPENERP好象不能直接检测到,是不是模块有点出错呀~不好意思!谁装成功了能否给点提示呀

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

                              导入ZIP文件安装也不行

                              ImportError: No module named openerp.report.render.rml2pdf.customfonts

                              GoodERP -- Odoo China fork

                              1 条回复 最后回复 回复 引用 0
                              • digitalsatori
                                digitalsatori 管理员 最后由 编辑

                                把import openerp.report.render.rml2pdf.customfons改成 import report.render.rml2pdf.customfonts
                                试试

                                【上海先安科技】(tony AT openerp.cn)

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

                                  按校长所说去掉openerp. 安装成功,打印出来的报表还是黑框
                                  server log是:
                                  File "/usr/lib/python2.6/dist-packages/reportlab/pdfbase/ttfonts.py", line 267 ,in readFile
                                    self._ttf_data = file.read()

                                  AttributeError: 'unicode' object has no attribute 'read'

                                  环境:OpenERP6.0 源码运行在ubuntu server上,web端访问

                                  GoodERP -- Odoo China fork

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

                                    我的好象行了~但有个问题,我在UBUNTU引入zip时,他说我不法创建模块文件,但把他到SHARE文件夹下后可以更新安装,也显示中文字了~

                                    1 条回复 最后回复 回复 引用 0
                                    • digitalsatori
                                      digitalsatori 管理员 最后由 编辑

                                      中文pdf报表输出已经并入l10n_cn模块: http://code.google.com/p/openerp-china/source/checkout
                                      为简化问题,该模块中自带了两个开源字体。欢迎大家测试汇报问题。

                                      【上海先安科技】(tony AT openerp.cn)

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

                                        15M的fonts文件放在addons里可能官方很难接受吧。是必要的么?

                                        GoodERP -- Odoo China fork

                                        1 条回复 最后回复 回复 引用 0
                                        • digitalsatori
                                          digitalsatori 管理员 最后由 编辑

                                          呵呵,有时间会加一些判断逻辑使用各个系统自带的中文字体,达人们有时间也可以共同改进呀。

                                          【上海先安科技】(tony AT openerp.cn)

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