birtChart 在linux下中文乱码的问题是Java虚拟机找不到中文字库字体文件造成的。
步骤:
1、把.bash_profile中的export LANG=zh_CN.GB2312修改为:
export LANG=zh_CN.GB18030。因为gb2312不支持一些特殊的汉字。
2、在在生成的chart图表的XML Source里修改字体:把SansSerif修改为SimSun。
3、找到一个能在linux下使用的中文字体,可以是Windows 7下的c:\windows\fonts\simsun.ttc。
4、在此要使用root用户【root/rootgnnt】登录,把上面的字体放到linux服务器安装jdk目录下 的/opt/jdk1.8.0_91/jre/lib/fonts目录里。
5、修改/opt/jdk1.8.0_91/jre/lib /fonts/fonts.dir
5.1、把第一行的数字加一 (如果是48就改为49).
5.2、在最后一行添加:
simsun.ttc -SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1988-0
6、修改/opt/jdk1.8.0_91/jre/lib/fontconfig.properties.src文件
把含有iso8859-1行从等号后面全部改为:
-SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1988-0
含有“CharToByteISO8859_1”的可以不改)。
7、启web服务器
修改前,乱码如下图:
修改后,正常如下图: