`
smileCat2009
  • 浏览: 21324 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

JFreeChart 中文乱码 一站式解决 一个方法搞定

阅读更多

最近刚使用JFreeChart 完成项目的图片导出任务,中文乱码问题整了一个下午,才搞定

 

以下是我的解决方法,如何有更好的,请指教

 

/**
     * 配置字体 
     * @param chart JFreeChart 对象
     */
    private void configFont(JFreeChart chart){
    	// 配置字体
    	Font xfont = new Font("宋体",Font.PLAIN,12) ;// X轴
    	Font yfont = new Font("宋体",Font.PLAIN,12) ;// Y轴
    	Font kfont = new Font("宋体",Font.PLAIN,12) ;// 底部
    	Font titleFont = new Font("隶书", Font.BOLD , 25) ; // 图片标题
    	CategoryPlot plot = chart.getCategoryPlot();// 图形的绘制结构对象
    	
    	// 图片标题
    	chart.setTitle(new TextTitle(chart.getTitle().getText(),titleFont));
    	
    	// 底部
    	chart.getLegend().setItemFont(kfont);
    	
    	// X 轴
    	CategoryAxis domainAxis = plot.getDomainAxis();   
        domainAxis.setLabelFont(xfont);// 轴标题
        domainAxis.setTickLabelFont(xfont);// 轴数值  
        domainAxis.setTickLabelPaint(Color.BLUE) ; // 字体颜色
        domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45); // 横轴上的label斜显示 
        
    	// Y 轴
    	ValueAxis rangeAxis = plot.getRangeAxis();   
        rangeAxis.setLabelFont(yfont); 
        rangeAxis.setLabelPaint(Color.BLUE) ; // 字体颜色
        rangeAxis.setTickLabelFont(yfont);  
        
    }

 

分享到:
评论
13 楼 hanmiao 2013-09-05  
上述方法在我的 jfreechart 1.0.15 版本上无法正常运行,会提示 ClassCastException,原因是XYPlot 类型无法直接转化为 CategoryPlot 类型,估计是官方在新的版本中作了壹些修改引起的,目前我知道的最有效的解决方案是 51CTO 上提供的这个方法:http://developer.51cto.com/art/201112/308902.htm
12 楼 zhaochy 2011-04-14  
谢谢!呵呵 解决了我的问题。。。
11 楼 brucehe 2010-12-07  
jfreechart在swing中如果字体不设置成中文字体,中文就显示成方块了。
但是在RCP中就没有这些字体问题。。。
这点很郁闷。。。
10 楼 ak47acao 2010-03-03  
非常实用,非常清晰,对新接触jfreeChart的人来说真是太及时了。
9 楼 成溪先生 2010-01-04  
看着很清楚
8 楼 tamsiuloong 2009-09-22  
小伙子不错。顶
7 楼 kangbin 2009-07-30  
太谢谢你了。
6 楼 xiaoxin5230 2009-04-17  
楼主正解。。。
5 楼 kevinhlj 2009-04-02  
绝对不是标题党,解决了我的问题,谢谢


看不出来那里是一站式解决,之前为什么出现乱码,后来怎么就不乱码,看的云里雾里啊

乱码是因为没有设置字体呗!
4 楼 transist 2009-03-25  
呵呵,标题党
3 楼 hsy537 2009-03-25  
看不出来那里是一站式解决,之前为什么出现乱码,后来怎么就不乱码,看的云里雾里啊
2 楼 blskyli 2009-03-24  
Thank You Very Much!
1 楼 fys124974704 2009-02-13  
学习了!很好!谢谢

相关推荐

Global site tag (gtag.js) - Google Analytics