看到网上不少关于在Linux上面不能正确显示Java程序中中文的问题,最近作一个BS应用,部署tomcat到linux后,用jfreechart做的图表不能正确显示中文字体.
经过我的摸索研究,通过以下步骤,可以顺利解决这个问题.
1.copy XFree86-libs-4.2.1-13.73.3.i386.rpm,ttfm-1.0-6.i386.rpm到linux,
用rpm -i 文件名 安装这2个rpm包.
2.copy gbsn00lp.ttf到 %jdk所在目录%/jre/lib/fonts/ 下面.
3.修改 %jdk所在目录%/jre/lib/fonts/ 下面的fonts.dir文件,第一行数值加1,在最后一行加上:
gbsn00lp.ttf -Arphic Technology Co.-AR PL SungtiL GB-medium-r-normal--0-0-0-0-c-0-iso10646-1
4.修改 %jdk所在目录%/jre/lib/ 目录下面的font.properties文件(如果系统为中文环境,那么是font.properties_zh).
将字体名全部替换成 -Arphic Technology Co.-AR PL SungtiL GB-medium-r-normal--0-0-0-0-c-0-iso1064-1,
在文件的末尾加上:
filename.song_medium_r=gbsn00lp.ttf
filename.song_medium_i=gbsn00lp.ttf
filename.song_bold_r=gbsn00lp.ttf
filename.song_bold_i=gbsn00lp.ttf
filename.fangsong_medium_r=gbsn00lp.ttf
filename.fangsong_medium_i=gbsn00lp.ttf
filename.fangsong_bold_r=gbsn00lp.ttf
filename.fangsong_bold_i=gbsn00lp.ttf
filename.kai_medium_r=gbsn00lp.ttf
appendedfontpath=%jdk所在目录%/jre/lib/fonts (出处:http://www.knowsky.com)