Linux导出或打印乱码
目录:
1. 问题描述
(1)在Linux环境下,会发现客户端预览是正常的,但是在导出或打印时会出现乱码,或者一些特殊符号如人民币符号"¥",在导出或打印时发现变成了美元符号"$"。
(2)在Linux系统的客户端,预览或导出的图片乱码。
2. 原因
2.1 预览正常或不正常原因
(1)客户端浏览器访问linux服务器上的报表时,服务器将结果返回给浏览器,浏览器返回结果,由于大部分客户端都是windows系统,所以一般都存在相应的字体,不太会乱码。
(2)若是直接在Linux系统下预览,缺失相应字体,则会出现乱码问题。
2.2 导出或打印出现问题的原因
在对模板进行导出或打印时,请求会发送到服务器,由服务器处理,此时服务器就需要相应的字体才能够画出结果,此时由于Linux上面可能找不到对应的字体,因此就会出现乱码现象或者"¥"符号变成"$"符号。
3. 解决方案
在Windows系统中下的
C:\WINDOWS\Fonts\找到相应的字体,将其拷贝到Linux系统下报表服务器使用的JDK下JRE的
\lib\fonts目录下,重启服务器,即可解决预览、导出和打印乱码问题。
注:若上述方法无法解决问题,则需要在对应的lib\fonts目录下新建fallback文件夹,然后将字体拷贝进去,重启服务器即可。
如果更换字体包之后,¥显示成了$,在linux下面将字体的默认值设置为中文即可。