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 时,它​​会删除其 acrofields。

于 2013-03-12T13:50:10.940 回答
0

您的代码似乎没有保存结果。你是?

这是我对类似情况的回答,可能会对您有所帮助。

于 2013-09-27T20:53:58.630 回答