JasperReports java库:它可以处理PDF 2.0(ISO 32000-2:2017)吗?

时间:2018-06-12 10:47:00

标签: java jasper-reports itext pdf-generation

我一直在我的java项目中使用JasperReports,但现在我遇到了一个问题。 客户需要生成符合ISO 32000-2:2017标准的PDF文件。 JasperReports使用iText进行pdf渲染,我知道最新版本的iText可以处理PDF 2.0,但我发现JasperReports目前正在使用较旧版本的iText,因为新版本的IP问题。 这是否意味着我无法使用此库创建PDF2.0兼容的文件?你有其他选择吗?

提前致谢

1 个答案:

答案 0 :(得分:3)

不,JasperReports不支持PDF 2.0。 JasperReports不能使用iText 7.1.x,因为(1.)其开源许可证与iText的开源许可证不兼容,并且(2.)据我所知,TIBCO不是iText Group的付费客户。

作为替代方案,您可以查看iText DITO。 DITO代表Design Interactive Templates Online。这是iText Group的新产品即将发布,但如果您联系iText,您可能会提前获得。

目标是允许人们使用WYSIWYG工具创建两种类型的模板。

  • 第一种类型包含输入模板。与DITO SDK一起部署时,它会生成可用于手动输入数据的HTML 5表单。
  • 第二种类型包含输出模板。与DITO SDK一起部署时,它会生成PDF文档(PDF 2.0,PDF / A,PDF / UA,...)。

模板本身是.dito文件。该文件是一个ZIP文件,包含HTML,CSS,图像等资源,以及有关模板中变量字段与实际数据(例如存储在JSON文件中的数据)之间数据绑定的信息。

DITO SDK采用HTML模板,使用基于数据绑定的数据填充它,然后使用iText 7和pdfHTML插件创建PDF。

目前,我不知道有任何其他供应商拥有支持PDF 2.0的模板解决方案。