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

解决方案 »

  1.   

    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)); 
      

  2.   

    楼上,
    还是,XP下怎么设置字体都没问题;linux下,乱码。个人感觉是不同系统字符集问题,但不知如何解决
      

  3.   

    解决方法:
    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 最后提醒一句,在修改配置前请备份原有的配置
      

  4.   

    补充:
    以上是从网上搜索的解决方法:
    公司系统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