Java iText生成带有横向和纵向页面的PDF
我在生成PDF文档时遇到问题。 例如,我需要生成3个页面:Java iText生成带有横向和纵向页面的PDF,java,itext,Java,Itext,我在生成PDF文档时遇到问题。 例如,我需要生成3个页面: 第一页(纵向)带有纵向文本 第二页(横向),带有纵向文本 第三页(纵向),带有纵向文本 我在创建第一页后设置: document.setPageSize(PageSize.A4.rotate()); 而且它似乎在起作用。 当我创建第三个页面时,我第二次设置了这个代码,但是文档仍然处于横向模式。 这是我的代码: Document document = new Document(PageSize.A4); PdfWri
- 第一页(纵向)带有纵向文本
- 第二页(横向),带有纵向文本
- 第三页(纵向),带有纵向文本
document.setPageSize(PageSize.A4.rotate());
而且它似乎在起作用。
当我创建第三个页面时,我第二次设置了这个代码,但是文档仍然处于横向模式。
这是我的代码:
Document document = new Document(PageSize.A4);
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(filename));
document.open();
document.newPage();
document.add(new Paragraph("Hello 1"));
document.setPageSize(PageSize.A4.rotate());
document.newPage();
document.add(new Paragraph("Hello 2"));
document.setPageSize(PageSize.A4.rotate());
document.newPage();
document.add(new Paragraph("Hello 3"));
document.close();
我想要这样的东西:
有什么建议吗?在分别创建第2页和第3页之前,您将
PageSize.A4.rotate()
设置为页面大小。因此,这两页都是横向的
由于最近设置的文档
页面大小值用于创建新页面,因此如果在创建第3页之前,仅在创建第2页之前,根本不设置该值,则结果是相同的
因此,如果您不希望在横向中显示第三页,则在创建第3页之前,必须明确地将页面大小值设置回纵向值PageSize.A4
:
document.setPageSize(PageSize.A4);
document.newPage();
document.add(new Paragraph("Hello 3"));
您能否发布iText7的更多代码看看您将第2页和第3页的页面大小设置为
PageSize.A4.rotate()
。因此,这两页都是横向的。如果不希望第三页横向显示,请不要将其大小设置为横向。@mkl确定。我删除了PageSize.A4.rotate()
但第三页仍处于横向模式。没有删除,而是替换为PageSize.A4
而没有rotate()
。