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即可