我尝试使用ApachePOI和Java生成Microsoft Word文档。我对结果非常满意,直到我尝试将文档的方向更改为横向。我确实搜索并找到了一些解决方案。其中之一是:https://stackoverflow.com/questions/28833418/switch-page-to-landscape-from-portrait-apache-poi.
当我尝试输入下面的代码时。我遇到了一些问题。我使用NetbeanIDE。
XWPFDocument document = new XWPFDocument();
CTDocument1 doc = document.getDocument();
CTBody body = doc.getBody();
CTSectPr section = body.addNewSectPr();
XWPFParagraph paragraph = document.createParagraph();
CTP ctp = paragraph.getCTP();
CTPPr br = ctp.addNewPPr();
br.setSectPr(section);
CTPageSz pageSize = section.getPgSz();
pageSize.setOrient(STPageOrientation.LANDSCAPE);
第9行和第10行给我关于“CTPageSz”的错误。
我遇到来自NetBeans的以下错误消息:
我搜索CTPageSz,但不知道如何修复此错误。我使用ApachePOI3.13。
有没有更简单的方法将方向更改为横向?谢谢。
我在CTPageSz上遇到了类似的问题!我想你用错了jar!
基本上有2个jar,一个是poi-ooxml-schemasjar另一个只是ooxml-schemasjar。
我在网上读到的是,jar的poi变体更小,只包含人们通常需要的类。当你从他们的网站下载apache-poi包时,你会得到这个变体。
您需要在项目中包含另一个变体,即简单的ooxml-jar,可以在这里找到。jar大小为14.8MB,明显大于poi变体。
希望这有帮助。一切顺利:)
我也遇到了同样的问题,我确实编译了这个依赖项,问题已经解决
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>ooxml-schemas</artifactId>
<version>1.3</version>
</dependency>
试着用它,告诉我它是否对你有用