电脑技术学习

linux下birt导出文件乱码

dn001

birt导出word时,如果系统里没有相应的字体文件,导出的word就会中文乱码。而birt导出pdf时,如果系统里找不到相应的字体文件,birt就会给其定义一种字体,然后生成pdf文件。

上边是我的两条猜测。

试验情况如下:

系统环境为windows

1.将birt报表中的所有内容字体设为 Serif 字体,系统导出 pdf 文件,打开时,adobe(最简化的简体中文版)需要下载繁体中文字库,如有中文标点,还需要下载日文字体,生成word文件也不乱码

2.将birt报表中的所有内容字体设为 宋体 字体,打开时,adobe不需要下载任何字库即可打开pdf文件,生成word文件也不乱码

3.将报表中所有内容字体设为 宋体 字体,找到birt runtime的fontsconfig.xml文件,注释掉
;

QUOTE:










让系统找不到字体文件.此时,虽然仍然设为宋体,但用adobe打开导出的pdf文件,会提示下载繁体中文字库,如有中文标点,还需要下载日文字库.

导出word文件,乱码.

根据试验 2 和试验 3的结果,我感觉是字体问题.

解决方案:
1。如果运行tomcat的linux帐号权限可以访问系统的fonts目录,则在linux下安装部分中文字体。

2。在linux下建立一个目录,将此目录权限设为任意用户可读,将windows下的字体文件copy到该目录下,然后修改前边所说的fontsconfig.xml目录,增加一行 ,指向字体目录,即可解决问题。

标签: linux