关于汉化
reportBro官方没有提供汉化,但是国际化的架子已经构建好了,只要把对应的汉化内容丢进去即可,汉化的内容我们结合官方提供的应用来介绍
官网提供了两个demo,这里以albumapp-django为例进行讲解。
albumapp-django
https://github.com/jobsta/albumapp-django
albumapp-django是官方为了介绍如何使用reportBro而开发的一个demo应用,如果你也要使用reportBro进行业务开发,你可以参考albumapp-django。
reportbro-designer
https://github.com/jobsta/reportbro-designer
官方描述:
Javascript plugin to visually design report layouts (for pdf and Excel) which can be created with reportbro-lib (a Python package) on the server.
reportbro-designer可以理解为一个前端插件,专门来绘制打印模板的,最终会将这些模板内容提现在xml结构中进行表示。
reportbro-lib
https://github.com/jobsta/reportbro-lib
官方描述:
PDF and Excel report generation library. Reports can be designed with reportbro-designer, a javascript plugin.
reportbro-lib可以理解为一个python写的工具包,可以将reportbro-designer设计出的模板转换为PDF或者Excel
上面的关系可以借助下面的这张图来了解
进入汉化正题
albumapp-django这个应用当然也可以进行汉化,但是十有八九我们后面是不会用这个demo去做东西的,所以汉化的重点在于reportbro-designer这个前端插件
reportbro-designer汉化涉及到的文件如下图
reportbro-designer/src/i18n/locale_zh_cn.js
我这里还没汉化完全,也就不上传这个js分享给大家了
reportbro-designer/src/i18n/locales.js
追加上面汉化的js文件
reportbro-designer/src/ReportBro.js
修改显示的默认语言
汉化效果检查
npm build或者双击截图框1中的build,build过后会在项目目录下生成dist文件夹,将dist(框2)下的所有内容copy至框3
覆盖完成后启动albumapp-django项目检查汉化效果如下图,不完善的地方再继续修改即可。
关于中文字体(突然累了不想写了,添加中文字体的后面看心情再出帖子吧)
默认的reportBro是没有配置中文字体的,你在打印的时候很有可能是打印的乱码/空白/或者打印报错。
打印中文字体提示错误