如何将页面旋转为横向,页面内容应为纵向 iTextpdf

arj*_*arj 5 itext xmlworker

我正在尝试创建一个 PDF 文档,其中纵向超过 2 页,其他页面为横向,我发现页面和文本都旋转到横向,我需要防止页面内容旋转。正在使用以下代码

 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();
Run Code Online (Sandbox Code Playgroud)

我的预期结果应该是这样的

预期结果.pdf

Bru*_*gie 6

您必须更改页面大小,而不是使用页面事件。

例如:

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();
Run Code Online (Sandbox Code Playgroud)

请注意,页面大小仅在下一页上发生变化。setPageSize()和的顺序newPage()很重要。