设计好报表后,把*.jasper文件拷贝到工程中,可以开始编码了,但是上一篇写的只是设计器中预览出现中文,而程序生成的PDF报表依旧不能显示中文,这篇将会做个补充.
先填代码吧:
package cn.com.gkhb.ireport.demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.HashMap;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExporter;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.export.JRPdfExporter;
/**
* 导入报表为pdf文件
*/
public class ExportDemo {
/**
* 报表模板位置
*/
private final static String jasperfile = "E:/myeclipse/IreportDemo/WebRoot/WEB-INF/jasperfiles/pieChart.jasper";
/**
* 目标文件位置
*/
private final static String desc = "G:/download/font/pie_chart_demo.pdf";
/**
* register database driver for mysql
*/
static {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
}
}
@SuppressWarnings("unchecked")
public static void main(String[] args) {
HashMap hm = new HashMap();
try {
// Fill the report using an empty data source
JasperPrint print = JasperFillManager.fillReport(jasperfile, hm, connectionProvider());
// Create a PDF exporter
JRExporter exporter = new JRPdfExporter();
// JRExporter exporter = new JRHtmlExporter();
// Configure the exporter (set output file name and print object)
exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, desc);
exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
// Export the PDF file
exporter.exportReport();
} catch (JRException e) {
e.printStackTrace();
System.exit(1);
} catch (Exception e) {
e.printStackTrace();
System.exit(1);
}
}
/**
* database connection provider
* @return
*/
protected static Connection connectionProvider() {
Connection connection = null;
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "";
try {
connection = DriverManager.getConnection(url, user, password);
} catch (SQLException ex) {
ex.printStackTrace();
}
return connection;
}
/*
* jpeg
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters_header, dataSource);
out = response.getOutputStream();
JasperExportManager.exportReportToPdfStream(jasperPrint, out);
if (printType==0) //if pdf stream
{
JasperExportManager.exportReportToPdfStream(jasperPrint, out);
} else { // if jpeg image stream
int pageIndex = 0;
BufferedImage pageImage = new BufferedImage(jasperPrint.getPageWidth() + 1, jasperPrint.getPageHeight() + 1, BufferedImage.TYPE_INT_RGB);
JRGraphics2DExporter exporter = new JRGraphics2DExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRGraphics2DExporterParameter.GRAPHICS_2D, pageImage.getGraphics());
exporter.setParameter(JRExporterParameter.PAGE_INDEX, new Integer(pageIndex));
exporter.exportReport();
ImageIO.write(pageImage, "jpeg", out);
}
out.close();
*/
}
这个时候如果需要PDF生成后显示中文,需要把安装的字体打包成JAR导入classpath中去,步骤如下:
进入ireport安装目录下,然后进入:\ireport\fonts文件夹,用将文件夹下所有内容直接打包成zip,修改后缀为jar,加入到项目classpath就OK了,此时应该就能生成pdf中有中文显示了
((注:转载须标明此文来源连接
http://xiaomy.iteye.com/blog/1139595
,否则视为侵权)
)
分享到:
相关推荐
在IT行业中,报表工具是数据分析和展示的重要组成部分。本文将详细介绍如何使用iReport 4创建饼图,这是...同时,压缩包中的"IREPORT饼图过程.wps"文件可能包含了一个示例饼图的制作过程,你可以打开学习,以加深理解。
### Ireport 4.5.0 制作3D饼图详解 在现代数据分析与展示领域,图表的应用极为广泛,特别是在企业管理层面,管理者们希望通过直观的图表形式来快速理解复杂的数据,以便于进行准确的决策。JasperReport作为一款优秀...
4. **样式和格式**:IReport提供了丰富的样式选项,包括字体、颜色、边框、对齐方式等。你还可以创建自定义样式并应用于整个报表或特定元素。 5. **子报表和分组**:对于复杂报表,可以使用子报表来嵌套报表,或者...
iReport内置了强大的图表生成器,支持多种类型的图表,如柱状图、饼图、线图等。用户可以通过配置数据系列、标签和样式来创建交互式图表。 7. **子报表和.jasper文件** 子报表是嵌套在主报表中的小型报表,可以...
### JasperReports结合iReport制作报表教程 #### 一、引言 在当今信息化时代,数据的可视化呈现变得尤为重要。无论是企业内部管理还是对外展示,一张清晰直观的报表往往能够传达更多的信息,帮助决策者快速做出判断...
2. **模板预览**:用户可以在设计过程中实时预览报表的外观,确保设计符合预期。预览功能支持打印预览和导出为多种格式,如PDF、Excel、HTML等。 3. **数据源支持**:iReport支持多种类型的数据源,包括JDBC、JNDI...
- **报表设计**:报表设计是报表制作的核心过程,它包括布局、样式、数据源配置等,Jaspersoft iReport Designer提供了一个拖放式的工作环境,使得设计过程更加简便。 - **JRXML文件**:这是iReport Designer使用...
1. 图表类型:iReport支持多种图表类型,如柱状图、饼图、线图、散点图等,可实现动态数据绑定和实时更新。 2. 图表属性:可以自定义图表的颜色、标签、图例等属性,使图表更具视觉吸引力。 七、导出与预览 1. 导出...
2. **丰富的报表元素**:提供了多种图表类型,如柱状图、饼图、线图等,以及表格、文本框、图片等元素,满足了各种复杂的报表设计需求。 3. **强大的数据处理能力**:支持SQL查询编辑,可以直接在报表设计中编写和...
1. **内置图表类型**:iReport提供了多种图表类型,如柱状图、折线图、饼图等,可以直接从数据源生成图表。 2. **图表属性**:调整颜色、标签、图例等图表属性,以适应不同的展示需求。 3. **动态数据**:图表数据...
4. **报表设计过程** - 打开ireport,新建报表项目,设置报表尺寸、列宽等基本信息。 - 添加数据字段,通过查询语句从数据库获取数据。 - 设计报表元素,如表格、图表、文本框等,设置它们的样式和属性。 - 添加...
### JasperReports结合Ireport报表制作教程 #### 一、引言 在当今信息化时代,数据可视化成为企业管理和决策的重要工具之一。报表系统作为数据展示的一种重要形式,在各个领域都有着广泛的应用。JasperReports是一...
通过以上步骤,我们不仅掌握了如何使用iReport创建基本的报表,还学会了如何进行更高级的操作,比如分组报表和图形报表的制作。这对于企业级应用程序来说是非常实用的功能。掌握这些技能后,你可以更高效地分析数据...
iReport是一款用于设计和生成报告的可视化工具,它基于JasperReports库,是 JasperReports 的官方图形设计前端。iReport支持多种数据源,并提供了丰富...希望这些知识点能够帮助您有效地使用iReport制作出专业的报表。
8. **图表制作**:iReport内置了多种类型的图表,如柱状图、饼图、线图等。可以自定义颜色、标签、图例,以及数据系列。图表的数据来源于查询结果,可以实时更新。 9. **导出与打印**:设计好的报表可以导出为各种...
【IREPORT报表例子】是关于使用iReport工具创建和设计报表的一个实例教程,特别强调了如何制作图表和物流套打报表。iReport是一款强大的开源报表设计工具,它允许开发者使用Java编写复杂的报告,并且与JasperReports...
5. **图表制作**:讲解如何创建各种类型的图表,如柱状图、饼图、线图等,以及如何设置图表的系列、数据源和样式。 6. **子报表与分组**:介绍如何在报表中嵌入子报表,以及使用分组功能来组织和展示数据。 7. **...
5. **图表制作**:iReport内置了多种类型的图表,如柱状图、饼图、线图等,可以根据数据集动态生成。用户可以设置图表的详细属性,如数据系列、颜色、标签等,使得报表更加直观易懂。 6. **子报表和报告分组**:在...