【问题标题】:How to generate a PDF output from a template PDF using something other than iText?如何使用 iText 以外的东西从模板 PDF 生成 PDF 输出?
【发布时间】:2014-10-12 10:19:22
【问题描述】:

我正在开发一个小型 Scala/Java 原型,其中有几个 PDF 模板,即它们具有文本和图像占位符,并且占位符应替换为一些内容。有些部分也是多个部分,即实际出现或重复的次数取决于输入。最后我需要生成并附加一个额外的 PDF 页面。

我知道这些用例可以使用 iText 覆盖。我的问题是我是否可以为此使用替代解决方案(以及如何做到这一点)。我宁愿暂时避免使用商业解决方案。

更新:我希望我的 PDF 模板由专业设计师创建。他们将知道占位符的位置,但应该完全控制设计方面。此要求放弃了仅基于 XML 输入或其他完全以编程方式创建 PDF 的解决方案。

【问题讨论】:

  • 如果重要的话,有一个较旧的 iText 版本 (2?) 在 LGPL 而非 AGPL 3 下发布。
  • 您可能会发现go.applidok.com 很有趣,它具有用于将数据与来自多种语言的 PDF 模板合并的 API,包括 Scala (play-demo.applidok.com)。

标签: java scala itext pdfbox


【解决方案1】:

Jasper - 它是专为创建与数据库输入相关的动态报告而设计的软件,但我认为它可以以您想要的方式使用。具有图形设计器(根据您的喜好选择 iReport 或 JaspersoftStudio),支持将多个变量与内容甚至图像一起传递。长的静态格式文本可能是个问题,但您必须自己判断。

JODReports + JODConverter - 这两个工具将允许您的设计人员在纯 ODT(OpenOffice 格式)文件中工作,将动态数据作为变量,您将能够从 Java 代码和以 PDF 格式打印输出。不仅如此,感谢Java UNO API,如果您插入的文本非常复杂(尽管使用起来并不直观),您可以完全控制模板的外观和行为方式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-17
    • 2023-03-20
    • 2015-02-13
    • 2023-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多