摸索Aspose.Imaging for JasperReport的科学实践(二)

Aspose Total for JasperReports
placeholder image
admin 发布于:2026-07-11 22:24:58
阅读: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.Imaging for JasperReports”为主,演示其产品的相关功能示例,在官网https://docs.aspose.com/total/jasperreports/页有各个产品的更多介绍与示例。

2.参考代码

案例实践了使用Aspose.Imaging for JasperReports产品将JasperReports报表渲染为html、jpg、wmf、svg、dicom、emf、psd、webp、tiff等格式,代码简单并非重点,所以直接给出部分参考API,分别是将报表转换为svg、psd等格式的代码,参考如下所示:


@Test
public void toSvg() throws Exception {
    ASSvgExporter exporter = new ASSvgExporter();
    ASSvgExportConfigurationImpl svgExportConfiguration = new ASSvgExportConfigurationImpl();
    svgExportConfiguration.setEmbedFonts(true);
    svgExportConfiguration.setCompress(true);
    exporter.setConfiguration(svgExportConfiguration);
    exporter.setExporterInput(new ASExportInputImpl(super.init()));
    exporter.setExporterOutput(new ASExporterOutputImpl("output/image_example.svg"));
    exporter.exportReport();
}

@Test
public void toPsd() throws Exception {
    ASPsdExporter exporter = new ASPsdExporter();
    ASPsdExportConfigurationImpl configuration = new ASPsdExportConfigurationImpl();
    configuration.setColorMode(ColorModesEnum.Rgb);
    configuration.setPsdVersion(PsdVersionEnum.Psd);
    configuration.setCompressionMethod(CompressionMethodEnum.Raw);
    exporter.setConfiguration(configuration);
    exporter.setExporterInput(new ASExportInputImpl(super.init()));
    exporter.setExporterOutput(new ASExporterOutputImpl("output/image_example.psd"));
    exporter.exportReport();
}

3.生成文档

image.png

(生成html,科学前)

image.png

(生成html,科学后)

image.png

(生成psd,科学前)

image.png

(生成psd,科学后)

image.png

(生成svg,科学前)

image.png

(生成svg,科学后)

4.其它说明

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

(2)本文使用了Aspose.Imaging for JasperReports产品将JasperReports报表渲染为html、jpg、wmf、svg、dicom、emf、psd、webp、tiff等文件格式

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

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

(5)所有的示例均只包含一页的内容,猜测不是API不支持或者是API默认的行为如是,再或者说是API没有用好;



 点赞


 发表评论

当前回复:作者

 评论列表


留言区