我制作了一个单页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页看起来很棒,但是当我滚动到第三页时,Acrobat错误,虽然模板页面似乎在那里,但没有我的报告数据。我认为问题可能是与上面的代码。什么好主意吗?谢谢。
这可能是因为当您显式地从列表强制转换为PDPage时,它会删除其acrofields
您的代码似乎没有保存结果。是吗?
下面是我对类似情况的回答,可能对你有所帮助。