我使用Excel文件中的数据创建了一个PDF文件。我不确定发生了什么,但当我尝试删除一个PdfPage并将其插入其他地方时,它显示警告消息“删除页面已被刷新”。
使用过的代码非常简单:
PdfDocument pdf = ...;
....
PdfPage page = pdf.removePage(10);
pdf.addPage(1, page);
但是我收到了警告和错误:
[main] WARN com.itextpdf.kernel.pdf.PdfPage - 删除页面有 已经满脸通红了。线程“main”中的异常 com.itextpdf.kernel.PdfException:flushed.page.cannot.be.added.or.inserted 在 com.itextpdf.kernel.pdf.PdfDocument.checkAndAddPage(PdfDocument.java:1473) at com.itextpdf.kernel.pdf.PdfDocument.addPage(PdfDocument.java:437)
老实说,我确实尝试过上面的代码和其他一些PDF文件,它可以删除和插入页面。我的PDF文件可能是什么原因?
我的申请中使用的完整代码:
PdfWriter writer;
PdfDocument pdfDocument;
Document document;
try {
writer = new PdfWriter(FileConfigurator.getAbsoluteResultFilePath(),
new WriterProperties().addXmpMetadata().setPdfVersion(PdfVersion.PDF_1_7));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
//Initialize PDF document
pdfDocument = new PdfDocument(writer);
// Initialize document
document = new Document(pdfDocument);