摸索Aspose.Words for JasperReport的科学实践(八)

Aspose Total for JasperReports
placeholder image
admin 发布于:2026-07-12 15:08:19
阅读:loading

前面一篇属于是简单的实践了“JasperReports”这款软件产品,利用jrxml模板搭配CSV文件填充示例,实现了报表导出html、docx、xlsx、pptx、pdf等格式文档的简单导出案例,其实只作为一个简单的学习摸索过渡,重点还是来科学的实践一下“Aspose.Total for JasperReports”的相关产品。前面所属于不得不的行为,所谓将欲Aspose JasperReports,必先JasperReports。

1.基本介绍

Aspose.Total for JasperReports 是一套报告呈现和转换扩展,可让您将报告从 JasperReports® 和 JasperServer 导出为支持的文件格式。Aspose.Total for Reporting Services 包含以下组件:

  • JasperReports 的 Aspose.BarCode

    以多种支持的图像格式渲染 60 多种符号的线性和二维条码,并将它们显示在 JasperReports® 上。

  • 用于 JasperReports 的 Aspose.Cells

    将报告从 JasperReports® 和 JasperServer 导出为 Microsoft Excel® 和其他支持的Excel格式。

  • 用于 JasperReports 的 Aspose.CAD

    市场上唯一一款能够将 JasperReports 报表导出为多种矢量和栅格图像文件格式的解决方案,可轻松将报表导出为各种图像格式。

  • Aspose.Imaging for JasperReports

    从 JasperReports® 将报告导出为各种支持的图像格式(BMP、GIF、DICOM、EMF、JPEG、PSD、GIF、JPG、PNG 等)。

  • Aspose.PDF for JasperReports

    将报告从 JasperReports® 和 JasperServer 导出为 PDF、PDF/A 和其他支持的文件格式。

  • 用于 JasperReports 的 Aspose.Slides

    将报告从 JasperReports® 和 JasperServer 导出为 Microsoft PowerPoint® 格式(PPT、PPS、PPTX、PPSX)。

  • Aspose.Words for JasperReports

    将报告从 JasperReports® 和 JasperServer 导出为 Microsoft Word® 支持的格式。

如果有兴趣可以自行到其官网查阅更多资料,这里给出中文链接地址:https://releases.aspose.com/zh/total/jasperreports/,该页面有各个版本的产品下载,本次以当前最新版本“Aspose.Total for JasperReports 26.2.0”为例进行的学习实践,本篇文章以“Aspose.Slides for JasperReports”为主,演示其产品的相关功能示例,在官网https://docs.aspose.com/total/jasperreports/页有各个产品的更多介绍与示例。

2.参考代码

Aspose.Words for JasperReports 是目前市场上唯一一款能够将 JasperReports 和 JasperServer 报表导出为 Microsoft Word 文档格式的解决方案。所有报表功能都能以极高的精度转换为 Microsoft Word 文档,所有支持的格式为:DOC、DOCX、RTF、ODT、HTML、TXT等,代码简单并非重点,所以直接给出部分参考API,参考如下所示:

@Test
public void toDocx() throws Exception {
    AWDocxExporter exporter = new AWDocxExporter();
    exporter.setParameter(AWExporterParameter.JASPER_PRINT, super.init());
    exporter.setParameter(AWExporterParameter.OUTPUT_FILE_NAME, "output/words_example.docx");
    exporter.exportReport();
}

@Test
public void toHtml() throws Exception {
    AWHtmlExporter exporter = new AWHtmlExporter();
    exporter.setParameter(AWExporterParameter.JASPER_PRINT, super.init());
    exporter.setParameter(AWExporterParameter.OUTPUT_FILE_NAME, "output/words_example.html");
    exporter.exportReport();
}

3.生成文档

生成的示例文档有上述所列的全部格式,仍然是挑出来几种看看即可,如下所示:

image.png

(DOCX,未科学)

image.png

(DOCX,科学后)

image.png

(HTML,未科学)

image.png

(HTML,科学后)

4.其它说明

(1)`aspose.xxx`不是开源免费的使用,Github上有示例项目,包含了大量的示例,示例的结果就是生成了一些《Evaluation Warning》警告、水印、内容页数限制、内容文本限制等;

(2)本文使用了Aspose.Words for JasperReports产品将JasperReports报表渲染为DOCX、DOC、RTF、ODT、HTML、TXT等文件格式;

(3)本文使用了aspose.words.jasperreports-21.9.0-6.3.0-6.4.0.jar内置的API,如不科学的使用会存在水印,科学使用也是基于原始的jar,不需要对jar文件做任何的改动;

(4)相关示例生成的所有格式文件提供《示例下载.zip》,比较简单,分别是科学前和科学后的生成对比结果;

(5)相关示例实践的实属非常费劲,官网资料里面的示例代码无法拿来运行使用,对原生JasperReports又不熟悉,也不愿意花更多的时间去熟悉它,更为艰难的是相关API调用各种报错;

(6)未科学的使用文档的页数范围受限,doc与docx只能显示3页;html格式直接报错,原因是生成的水印除了文本还有图片,不知如何存放图片位置导致(上图有);

(7)特别再说明一点,尝试了Aspose.Words for JasperReports的许多版本,最终在各种折腾后准备放弃之前,看了一眼doc文档,所以示例运行成功了;


 点赞


 发表评论

当前回复:作者

 评论列表


留言区