我正在尝试使用PDFSharp和此代码(我发现here)将两个创建的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,则将它们组合起来应该没有任何问题。

在此先感谢您的帮助!

最佳答案

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

如果尝试使用其他方法,它可能会起作用:打开第二个PDF进行修改,打开第一个PDF进行导入,然后在第二个文件的开头添加第一个文件的页面(如果两个文件都包含填充表单字段)。
如果必须保留原始文件,请先创建第二个文件的副本。

关于.net - 将PDF与PDFSharp合并会丢失表单字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14965242/

10-13 04:44