美文网首页
java poi改变word某一页横向

java poi改变word某一页横向

作者: 板栗炖牛肉 | 来源:发表于2021-12-17 14:38 被阅读0次

前言

  • 文档需要某一页置位横向

解决方案

  • 直接上代码

    public static final String SUBSECTIONONE = "v";

    public static final String SUBSECTIONTWO = "landscape";

/**
     * 分段
     *
     * @param xwpfDocument
     * @param result SUBSECTIONONE / SUBSECTIONTWO 
     */
    public void subsection(XWPFDocument xwpfDocument, String result) {
        CTDocument1 doc = xwpfDocument.getDocument();
        CTBody body = doc.getBody();
        CTP ctp = body.addNewP();
        CTPPr ctpPr = ctp.addNewPPr();
        CTSectPr ctSectPr = ctpPr.addNewSectPr();
        changeOrientation(ctSectPr, result);
    }


    /**
     * @param section
     * @param orientation 字符串方向
     */
    private void changeOrientation(CTSectPr section, String orientation) {
        CTPageSz pageSize = section.isSetPgSz() ? section.getPgSz() : section.addNewPgSz();
        if (orientation.equals(SUBSECTIONTWO)) {
            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));
        }
    }
  • 使用subsection方法
...文档内容
wordUtil.subsection(xwpfDocument, WordUtil.SUBSECTIONONE);
...文档内容(此页为横向)
wordUtil.subsection(xwpfDocument, WordUtil.SUBSECTIONTWO);

相关文章

网友评论

      本文标题:java poi改变word某一页横向

      本文链接:https://www.haomeiwen.com/subject/agsifrtx.html