【问题标题】:How to copy form fields with PdfWriter not PdfCopy in iTextSharp如何在 iTextSharp 中使用 PdfWriter 而不是 PdfCopy 复制表单字段
【发布时间】:2012-06-04 13:00:47
【问题描述】:

我想合并两个 PDF 文件(仅限选定的页面)并向它们添加自定义页眉和页脚。

因此,我不使用PdfCopy,它只是复制页面而不更改它。 我使用PdfWriter

问题是我不知道如何复制 AcroFields、Acroforms、注释和其他所有内容,除了 PdfWriter 的内容。

你知道怎么做吗?

【问题讨论】:

  • 既然您提到您只需要 pdf 的特定页面,请查看 PdfReader 类中的“GetPageContent()”方法。我相信其中一个重载的原型只需要一个页码。

标签: c# .net pdf itextsharp itext


【解决方案1】:

您想使用PdfWriter 类的GetImportedPage 方法。这会将所有内容复制到您可以使用的 PdfImportedPage 中。

PdfReader pdfReader = new PdfReader(originalFile);
PdfImportedPage importedPage = pdfWriter.GetImportedPage(pdfReader, pageNumber);

例如,您可以将前面的代码放在PdfPageEventHelperOnOpenDocument 事件中,然后在OnEndPage 事件中您可以使用PdfWriterDirectContentUnder 对象来放置整个页面在当前页面下方。

pdfWriter.DirectContentUnder.AddTemplate(importedPage, 0, 0);

【讨论】:

    猜你喜欢
    • 2014-01-06
    • 1970-01-01
    • 1970-01-01
    • 2014-02-20
    • 2011-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-22
    相关资源
    最近更新 更多