日期:2014-05-16  浏览次数:20741 次

JfreeChart解决linux部分文字乱码(服务器)
这是linux版本JDK/JRE缺乏中文字体(支持)的缘故. [size=x-small][/size]

1.找一个能在linux下用的中文字体,我找的是windows下的c:\windows\fonts\simsun.ttc
  (我下面有下载)

2.把上面那个字体文件放到你linux服务器安装jdk目录的jre/lib/fonts目录里

3.改/usr/j2sdk1.XXX/jre/lib/fonts/fonts.dir
     3.1   把第一行的数字加一 (如果是72就改为73)
     3.2   在最后新增一行
  
Java代码 
simsun.ttc -SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1988-0   


4.修改/usr/j2sdk1.XXx/jre/lib/font.properties文件(这个文件我下面也有下载)
     4.1  把含有iso8859-1行从等号后面全部改为
            
Java代码 
-SungtiL GB-medium-r-normal--0-0-0-0-c-0-gb2312.1988-0   

     (含有“CharToByteISO8859_1”的可以不改)

5.打完收功...不要忘了重启你的web服务器




在此基础上设置(饼图和柱状图)  chart.getTitle().setFont(new Font("体",Font.CENTER_BASELINE,12));//设置标题字体
以下是曲线图x和y坐标轴设置
//   获得坐标轴对象Axis,横轴对象:
     Font fonts = new Font("宋体",Font.CENTER_BASELINE,12);
     Axis axis=chart.getCategoryPlot().getDomainAxis();
     //纵轴对象:
     Axis axis1=chart.getCategoryPlot().getRangeAxis();
     axis.setLabelFont(fonts);
    // axis.setTickLabelFont(font);
     axis1.setLabelFont(fonts);