我想在apache poi中使用XWPF格式创建一个word文档 . 该文档需要创建表,所以我需要将页面方向设置为横向 . 我使用Landscape and portrait pages in the same word document using Apache POI XWPF in Java的现有代码,并在创建文档后包含一个函数调用,但它抛出一个空指针exeption . 任何人都可以帮助我 . 先感谢您 . 我使用以下代码:
private void changeOrientation(XWPFDocument document, String orientation){
CTDocument1 doc = document.getDocument();
CTBody body = doc.getBody();
CTSectPr section = body.addNewSectPr();
XWPFParagraph para = document.createParagraph();
CTP ctp = para.getCTP();
CTPPr br = ctp.addNewPPr();
br.setSectPr(section);
CTPageSz pageSize = section.getPgSz();
if(orientation.equals("landscape")){
pageSize.setOrient(STPageOrientation.LANDSCAPE);
pageSize.setW(BigInteger.valueOf(842 * 20));
pageSize.setH(BigInteger.valueOf(595 * 20));
}
else{
pageSize.setOrient(STPageOrientation.PORTRAIT);
pageSize.setH(BigInteger.valueOf(842 * 20));
pageSize.setW(BigInteger.valueOf(595 * 20));
}
}
它在线上抛出一个错误:
pageSize.setOrient(STPageOrientation.LANDSCAPE);
1 回答
并非所有部分都会在其上设置页面大小对象 . 您需要检查是否存在,如果没有,则在设置方向之前添加
所以,你应该改变这条线
反而是
然后再继续你的电话