5

PDFSharp とこのコードを使用して、作成した 2 つの 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);

2 番目の PDF には、同じく PDFSharp を使用して入力するフォーム フィールドがあります。私が直面している問題は、新しい PDF に結合すると、フォーム フィールドが空白になることです。

2 番目の PDF を作成して保存した後に開くと、フォーム フィールドにテキストが表示されます。

何か不足していますか、またはこの問題に関して PDFSharp に何らかのバグがありますか? PDFを開いて表示できれば、それらを結合しても問題はないように思えます。

よろしくお願いします。

4

1 に答える 1

1

PDFsharp は、フォーム フィールドを完全にはサポートしていません。私はこれを調べませんでしたが、PDF ファイルと入力済みのフォーム フィールドを組み合わせるとバグが発生する可能性があります。PDFsharp の維持と改善を続けていますが、フォーム フィールドの処理を改善する予定はありません。

別の方法で試してみるとうまくいくかもしれません: 2 番目の PDF を変更用に開き、最初の PDF をインポート用に開き、最初のファイルのページを 2 番目のファイルの先頭に追加します (両方のファイルに塗りつぶしが含まれている場合、これは機能しない可能性があります)。フォーム フィールド)。
元のファイルを保持する必要がある場合は、その前に 2 番目のファイルのコピーを作成してください。

于 2013-02-21T09:10:31.310 に答える