jfreeChart 在linux下中文乱码的解决

pointfish 2011-03-24

发表于@2010年09月02日 10:57:00原CSDN自己原创博客

做项目中用到了jfreechart用来显示统计课程排行的结果,但是在xp下显示正常,但是在linux下显示中文乱码类似口口口之类的

在网上搜了些,一开始由于对linux不太熟悉,也就没有解决问题,现在学习了一段fedora后,重新解决了这个问题

首先将xp下的simsun.ttc字体拷贝到linux下,放在linux的%JAVA_HOME%/jre/lib/fonts目录下然后修改目录下的fonts.dir文件将首行的数字+1比如122变为123,然后在最后一行加上:

simsun.ttc-SungtiLGB-medium-r-normal--0-0-0-0-c-0-gb2312.1988-0

然后保存,如果是只读文件的话要强制保存:w!

最后在含有jfreechat的程序中设置如下:

CategoryPlotplot=this.chart.getCategoryPlot()

plot.setForegroundAlpha(0.6F);

chart.setTitle(newTextTitle(chart.getTitle().getText(),newFont("宋体",1,13)));

CategoryAxisdomainAxis=plot.getDomainAxis();

domainAxis.setLabelFont(newFont("宋体",1,12));

domainAxis.setTickLabelFont(newFont("宋体",0,10));

NumberAxisnumberaxis=(NumberAxis)plot.getRangeAxis();

numberaxis.setTickLabelFont(newFont("宋体",0,12));

numberaxis.setLabelFont(newFont("宋体",0,12));

domainAxis.setLowerMargin(0.01D);

domainAxis.setUpperMargin(0.01D);

最后重启tomcat即可

相关推荐