日期:2014-05-20  浏览次数:20753 次

JFreechart中文乱码问题
Jfreechart 生成的图片,在Xp系统下可正常显示汉字,但在linux系统下乱码。
求教解决方法

------解决方案--------------------
JFreeChart.举例,以饼图为例

首先,我们知道,JFreeChart生成的图标分为3个部分.分别是
1.Title (标题)
2.polt (实际的统计图)
3.Legend (图例)
假如要修改字体,或者颜色
我们就要修改它的plot部分
OK,修改颜色:
JFreeChart chart = chart.createPieChart("标题",data,true,false,false)
PiePlot plot= (PiePlot)chart.getPlot();
plot.setSectionPaint(0,new Color(255,255, 237) );
plot.setSectionPaint(1,new Color(255 ,215, 0 ) );
plot.setSectionPaint(2,new Color(238, 92 ,66 ) );
其中,0,1,2分别代表第1个块,第2个块,第3个块......new Color(255,255, 237) 为颜色对象

修改字体:
plot.setLabelFont(new Font("微软雅黑",Font.BOLD,18));
------解决方案--------------------
解决方法:
1.确认%JavaHome%/jre/lib/fonts目录下存在zysong.ttf
2.在%JavaHome%/jre/lib/fonts目录下执行"ttmkfdir -o fonts.dir"命令,重新生成fonts.dir文件
3.确认/usr/share/fonts/zh_CN/TrueType目录存在,如果不存在则mkdir创建
4.确认/usr/share/fonts/zh_CN/TrueType目录下存在zysong.ttf
5.在%JavaHome%/jre/lib目录下,执行 cp fontconfig.RedHat.3.properties.src fontconfig.properties
6.重新启动tomcat,大功告成!

需要下载zysong.ttf 

最后提醒一句,在修改配置前请备份原有的配置
------解决方案--------------------
补充:
以上是从网上搜索的解决方法:
公司系统linux fc4 jdk1.5 在用jfreechart图片中的文字出现乱码
我是按照如下方法解决的:
1.将zysong.ttf复制到Java安装目录/jre/lib/fonts
2.修改Java安装目录/jre/lib/fonts下的font.ttf文件
修改首行的数字(数字+1)
在最后一行添加zysong.ttf -misc-zysong--medium-r-normal--0-0-0-0-c-0-GB18030
3.将/opt/jdk1.5/jre/lib/fontconfig.RedHat.3.properties.src文件,更名为fontconfig.properties;
4.建立/usr/share/fonts/zh_CN/TrueType文件夹,拷贝zysong.ttf至该文件夹下.
5.重启Tomcat
------解决方案--------------------
同意楼上