在ZK中报表是对jfreechart的改进,但是对中文的支持不好。有中文乱码.
eg:
会出现乱码,解决方法如下:
[color=red]1.添加类:[/color]
[color=red]2. Engine添加到Chart中[/color]
eg:
charView.setTitle("报表统计");
会出现乱码,解决方法如下:
[color=red]1.添加类:[/color]
package cn.ffcs.cloud.zk.service;
import org.zkoss.zkex.zul.impl.JFreeChartEngine;
import org.zkoss.zul.Chart;
import java.awt.Font;
public class ChartEngine extends JFreeChartEngine{
public boolean prepareJFreeChart (org.jfree.chart.JFreeChart jfchart, Chart chart)
{
Font titleFont = new Font("宋体", Font.BOLD , 18);
Font legendFont = new Font("黑体", Font.PLAIN ,12);
Font axisFont = new Font("隶书", Font.PLAIN,12);
jfchart.getTitle().setFont (titleFont);
jfchart.getLegend().setItemFont (legendFont);
jfchart.getLegend().setVisible (true);
jfchart.getCategoryPlot().getDomainAxis().setTickLabelFont (axisFont);
jfchart.getCategoryPlot().getRangeAxis().setTickLabelFont (axisFont);
jfchart.getCategoryPlot().getDomainAxis().setLabelFont (axisFont);
jfchart.getCategoryPlot().getRangeAxis().setLabelFont (axisFont);
return false;
}
}
[color=red]2. Engine添加到Chart中[/color]
// 中文乱码问题解决
charView.setEngine(new ChartEngine());
charView.setTitle("报表统计");
本文介绍了解决ZK报表中使用jfreechart显示中文时出现乱码问题的解决方案,通过自定义ChartEngine类,修改图表的字体设置,确保中文显示正常。
608

被折叠的 条评论
为什么被折叠?



