CentOS下JFreeChart生成图片的中文乱码

现象:jfreechart生成的图片中,图片内容显示正常,但是中文汉字乱码,这些汉字在定义的时候要么是默认字体要

么是宋体

环境:

JDK:1.4.2(build1.4.2-b28)

OS:CentOS4.6

原因:Linux下的JRE不支持中文字库,注意这里是字库而不是如UTF-8等编码方式

解决方案:

1、将附件中的font.properties.zh_CN.Redhat保存到%JAVA_HOME%/jre/lib/目录下

2、将附件中的字库文件zysong.ttf保存到/usr/share/fonts/zh_CN/TrueType/目录下

3、重启web服务器

补充:

1、字体属性文件名必须为font.properties.zh_CN.Redhat。在安装JDK时,jre的lib目录下自动安装了

font.properties.zh_CN.Redhat8.0,其对应的字库文件zysong也存在相应位置,但是依然乱码,改了名字后问题才解

决,具体原因需进一步研究

2、注意font.properties.zh_CN.Redhat文件的最后一行filename.-misc-zysong18030-medium-r-normal–*-%d-*-*-

c-*-iso10646-1=/usr/share/fonts/zh_CN/TrueType/zysong.ttf,实际上这里就是指向某个字库

3、网上看到有人说simsun.ttf也可以,但是在我的环境下不行

4、据说CentOS5下面也存在此问题,用同样方法可以解决

相关推荐