将空白/空白页添加到PdfDocument java

问题描述 投票:0回答:1

是否可以将空白页添加到现有的PdfDocument中?我创建了这样的方法:

  public void addEmptyPage(PdfDocument pdfDocument){
    pdfDocument.addNewPage();
    pdfDocument.close();
}

但是,当我将其与PdfDocument一起使用时,它会抛出:

com.itextpdf.kernel.PdfException: There is no associate PdfWriter for making indirects.
at com.itextpdf.kernel.pdf.PdfObject.makeIndirect(PdfObject.java:228) ~[kernel-7.1.1.jar:?]
at com.itextpdf.kernel.pdf.PdfObject.makeIndirect(PdfObject.java:248) ~[kernel-7.1.1.jar:?]
at com.itextpdf.kernel.pdf.PdfPage.<init>(PdfPage.java:104) ~[kernel-7.1.1.jar:?]
at com.itextpdf.kernel.pdf.PdfDocument.addNewPage(PdfDocument.java:416) ~[kernel-7.1.1.jar:?]

哪种方法可以将空白页插入pdf文档?

java pdf itext pdf-generation pdfdocument
1个回答
0
投票

该例外情况表示您仅使用PdfDocument而不使用PdfReader来初始化PdfWriter。此类文件仅供阅读。

如果要编辑PDF,请同时用PdfDocumentPdfReader初始化PdfWriter

显然不要PdfReaderPdfWriter中使用相同的文件名。首先写入一个临时文件,关闭所有参与的对象,然后将原始文件替换为该临时文件。或将原始文件读入byte[]并从该数组初始化PdfReader

© www.soinside.com 2019 - 2024. All rights reserved.