我正在尝试使用 Java 和 Apache POI 库来创建一个包含一些横向和一些纵向页面的 word 文档。我可以更改所有页面的方向,但是有没有办法只更改其中一些页面的方向?我尝试过使用不同的部分和主体,但无济于事。
目前,我编写了一个函数,该函数将 XWPFDocument 作为输入并更改新主体的方向。我曾希望更改新正文的方向不会影响以前的页面,但会影响整个文档。
private void changeOrientation(XWPFDocument document, String orientation){
CTDocument1 doc = document.getDocument();
CTBody body = doc.addNewBody();
body.addNewSectPr();
CTSectPr section = body.getSectPr();
if(!section.isSetPgSz()) {
section.addNewPgSz();
}
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));
}
}
谢谢!