itextpdf addNewPage 后内容还是在上一页
这可能是因为您在添加新页面之前没有调用document.close()方法。在iText 5中,您需要在完成所有内容之后调用document.close()方法才能确保所有内容都被写入PDF文件。如果您在调用document.close()之前调用document.newPage(),则可能会出现您描述的情况。
另外,请确保您在新页面上添加内容时使用正确的PdfWriter对象。如果您在新页面上使用了一个不同的PdfWriter对象,那么您添加的内容可能会被写入到之前的页面而不是新页面上。
以下是一个示例代码片段,演示了如何使用document.close()和正确的PdfWriter对象来确保新页面上的内容被正确添加:
// create a new document
Document document = new Document();
// create a PdfWriter object
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("output.pdf"));
// open the document
document.open();
// add some content to the first page
document.add(new Paragraph("This is the first page."));
// add a new page
document.newPage();
// get the PdfWriter object for the new page
PdfWriter newPageWriter = writer.getDirectContent().getPdfWriter();
// add some content to the new page
document.add(new Paragraph("This is the second page."));
// close the document
document.close();
在上面的代码中,我们首先创建了一个PdfWriter对象,然后添加了一些内容到第一页。接下来,我们使用document.newPage()方法创建了一个新页面,并获取了新页面的PdfWriter对象。最后,我们添加了一些内容到新页面,并在完成所有内容之后调用了document.close()方法
原文地址: https://www.cveoy.top/t/topic/efHc 著作权归作者所有。请勿转载和采集!