gpt4 book ai didi

java - 获取页面信息时出现 NullPointerException

转载 作者:行者123 更新时间:2023-11-30 01:53:59 25 4
gpt4 key购买 nike

我需要检测 PDF 文档的页面方向。这样做我试图获取单个页面的页面大小:

pdfGen = createPdf.makePdf("doc.pdf");
document = pdfGen.getDocument();
document.setMargins(80, 80, 80, 80);
writer = pdfGen.getWriter();

document.add(new Paragraph("some content"));

document.add(new AreaBreak(PageSize.A4.rotate()));
document.add(new Paragraph("more content"));

document.add(new AreaBreak(PageSize.A4));
document.add(new Paragraph("even more content"));

Rectangle rect = document.getPdfDocument().getPage(1).getPageSizeWithRotation(); // e.g. the 1st page

document.close();
writer.close();

但我得到的只是这一行中的 NullPointerException:Rectangle rect = document.getPdfDocument().getPage(1).getPageSizeWithRotation()

<小时/>
java.lang.NullPointerException
at com.itextpdf.kernel.pdf.PdfDictionary.get(PdfDictionary.java:456)
at com.itextpdf.kernel.pdf.PdfDictionary.getAsArray(PdfDictionary.java:156)
at com.itextpdf.kernel.pdf.PdfPage.getMediaBox(PdfPage.java:516)
at com.itextpdf.kernel.pdf.PdfPage.getPageSize(PdfPage.java:125)
at com.itextpdf.kernel.pdf.PdfPage.getPageSizeWithRotation(PdfPage.java:134)
at com.myPackage.MyClass.myFunc(MyClass.java:15)
// ...

最佳答案

这是因为启用了立即刷新模式。

提前保存所需的信息或使用三参数构造函数来创建文档:

Document document = new Document(pdfDoc, PageSize.A4, true);

正如 immediateFlush 的文档中所述:如果为 true,请尽快将页面和页面相关说明写入 {@link PdfDocument}。 就这样完成了以减少内存使用。

关于java - 获取页面信息时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55126301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com