5

我正在尝试使用 PDFSharp 和此代码(我在此处找到)将两个创建的 PDF 文件连接到一个新的 PDF:

        // Open the output document
        PdfDocument outputDocument = new PdfDocument();
        // Iterate files
        foreach (string file in files)
        {
            // Open the document to import pages from it.
            PdfDocument inputDocument = PdfReader.Open(file, PdfDocumentOpenMode.Import);

            // Iterate pages
            int count = inputDocument.PageCount;
            for (int idx = 0; idx < count; idx++)
            {
                // Get the page from the external document...
                PdfPage page = inputDocument.Pages[idx];
                // ...and add it to the output document.
                outputDocument.AddPage(page);
            }
        }
        // Save the document...
        string filename = Path.Combine(this.tempFolder, "MyPDF.pdf");
        outputDocument.Save(filename);

第二个 PDF 有我填写的表单域,也使用 PDFSharp。我遇到的问题是,当组合成一个新的 PDF 时,表单字段显示为空白。

创建并保存后,我打开了第二个 PDF,表单字段显示的文本很好。

我是否遗漏了什么,或者 PDFSharp 在这个问题上是否存在某种错误?在我看来,如果我可以很好地打开和查看 PDF,那么组合它们应该没有任何问题。

在此先感谢您的帮助!

4

1 回答 1

1

PDFsharp 不完全支持表单域。我没有对此进行检查,但是在将 PDF 文件与填充的表单字段组合时可能会出现错误。我们继续维护和改进 PDFsharp,但没有计划改进表单域的处理。

如果您尝试不同的方式,也许它会起作用:打开第二个 PDF 进行修改,打开第一个 PDF 进行导入并在第二个文件的开头添加第一个文件的页面(如果两个文件都包含填充,这可能不起作用表单域)。
如果您必须保留原始文件,请在执行此操作之前创建第二个文件的副本。

于 2013-02-21T09:10:31.310 回答