如何将页面旋转成横向并且页面内容应该是纵向的 iTextpdf
how to rotate pages into landscape and page content should be in portrait iTextpdf
我正在尝试创建一个超过 2 页纵向页面和其他横向页面的 PDF 文档,我发现页面和文本都旋转为横向我需要防止页面内容旋转。我正在使用以下代码
Document document = new Document(PageSize.A4, 36, 36, 36, 72);
PdfWriter writer = PdfWriter.getInstance(document, new
FileOutputStream(outPutDirectory + indexID + ".pdf"));
writer.setPageEvent(new Orientation(orientation));
document.open();
XMLWorkerHelper.getInstance().parseXHtml(writer,document, new ByteArrayInputStream(parserXHtml(page.getPageContent()).getBytes()))
document.close();
我的预期结果应该是这样的
您必须更改页面大小,而不是使用页面事件。
例如:
Document document = new Document(PageSize.A4);
PdfWriter writer = PdfWriter.getInstance(document, new
FileOutputStream(outPutDirectory + indexID + ".pdf"));
document.open();
// Add some content in portrait
document.setPageSize(PageSize.A4.rotate());
document.newPage();
// Add some content in landscape
document.close();
请注意,页面大小只会在下一页发生变化。 setPageSize()
和 newPage()
的顺序很重要。
我正在尝试创建一个超过 2 页纵向页面和其他横向页面的 PDF 文档,我发现页面和文本都旋转为横向我需要防止页面内容旋转。我正在使用以下代码
Document document = new Document(PageSize.A4, 36, 36, 36, 72);
PdfWriter writer = PdfWriter.getInstance(document, new
FileOutputStream(outPutDirectory + indexID + ".pdf"));
writer.setPageEvent(new Orientation(orientation));
document.open();
XMLWorkerHelper.getInstance().parseXHtml(writer,document, new ByteArrayInputStream(parserXHtml(page.getPageContent()).getBytes()))
document.close();
我的预期结果应该是这样的
您必须更改页面大小,而不是使用页面事件。
例如:
Document document = new Document(PageSize.A4);
PdfWriter writer = PdfWriter.getInstance(document, new
FileOutputStream(outPutDirectory + indexID + ".pdf"));
document.open();
// Add some content in portrait
document.setPageSize(PageSize.A4.rotate());
document.newPage();
// Add some content in landscape
document.close();
请注意,页面大小只会在下一页发生变化。 setPageSize()
和 newPage()
的顺序很重要。