【问题标题】:How to merge PDFs into a PDFA1b with watermarks using iText5如何使用 iText 5 将 PDF 合并到带有水印的 PDF A1b
【发布时间】:2017-04-07 13:33:11
【问题描述】:

这是我需要做的:

  • 将多个 PDF 文档(可能是也可能不是 PDFA)合并到一个 PDFA1b 中。
  • 在生成的 PDF 的每一页上添加水印(简单的文本标签)。

必须使用 iText 5

我看过这个官方的合并示例:http://developers.itextpdf.com/examples/merging-pdf-documents/adding-cover-page-existing-pdf

但是这种方法可以用来创建PDFA,还可以添加水印吗? 还是我坚持使用他明确表示不要使用的其他方法:http://developers.itextpdf.com/examples/merging-pdf-documents-itext5/how-not-merge-documents

【问题讨论】:

    标签: pdf itext


    【解决方案1】:

    您可以使用包括 iText 在内的任何 PDF 库创建符合 PDF/A-1b 的文件。一般来说,PDF/A 是 ISO 32000 (PDF) 的子集,因此实际上只需使用该工具对文件执行您需要的操作,但添加任何被PDF/A-1b(在您的情况下)。

    需要注意的是,iText 或“支持”PDF/A 的任何其他库不会阻止您以某种方式修改 PDF这是 PDF/A 所禁止的……你只需要知道那些东西是什么。

    所以...在合并之前,您需要确保输入文件没有任何注释或表单字段或任何其他交互式内容。

    合并后,将您的水印添加为页面内容,并确保您的 XMP 元数据符合要求,您应该没问题。

    【讨论】:

    • “支持”PDF/A 的库不会阻止您以 PDF/A 禁止的方式修改 PDF。 确实如此,但在设计 iText 7 时,我们尝试添加尽可能多的检查(并且在处理速度方面可以接受)以在尝试以 PDF/A 禁止的方式修改现有 PDF 时抛出异常。
    • 好点@BrunoLowagie。所以我的建议是创建一个新的空白 PDF/A 文档并将您的页面从其他文件附加到 it 而不是合并现有的 PDF 文件。这样您就可以利用例外情况。
    猜你喜欢
    • 2018-03-31
    • 1970-01-01
    • 2019-03-28
    • 2012-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-23
    • 1970-01-01
    相关资源
    最近更新 更多