1

単一ページの pdf テンプレート ファイルを作成しました。次に、pdfbox を使用して、「n」ページの PDF を作成します (レポートのサイズによって異なります)。これらのページのすべての「n」をテンプレートpdfファイルのページにしたい。すべての「n」ページをそのページのコピーにする最良の方法は何ですか? これが私の現在のコードです:

PDDocument document = null;
try {
    document = PDDocument.load(WestfieldClientReportApp.class.getResource("/com/dramble/resources/template.pdf"));
} catch (IOException ex) {
    Logger.getLogger(WestfieldClientReportView.class.getName()).log(Level.SEVERE, null, ex);
}

PDPage templatepage = (PDPage) document.getDocumentCatalog().getAllPages().get(0);

int n = 0;
while (n < numPages) {
    n++;
    document.importPage(templatepage);
}

問題は、結果セットが大きい場合です。PDF を開くと、11 ページとして表示されます。最初の 2 ページは見栄えがしますが、3 ページ目にスクロールすると、Acrobat エラーが発生します。テンプレート ページはそこにあるように見えますが、レポート データはありません。問題はおそらく上記のコードにあると思います。何か案は?ありがとう。

4

2 に答える 2

0

リストから PDPage に明示的にキャストすると、そのアクロフィールドが削除される可能性があります。

于 2013-03-12T13:50:10.940 に答える
0

あなたのコードは結果を保存していないようです。あなたは?

これは、あなたを助けるかもしれない同様のシナリオに対する私の答えです。

于 2013-09-27T20:53:58.630 に答える