当前位置:   article > 正文

poi给Word添加“下一页”_sectpr

sectpr

如何在Word中插入下一页

在Word操作中,如果想插入不同的页眉,就必须要将【链接到前一条页眉】取消勾选,而只有插入一个“下一页”分隔符时才能做到这个效果。
在这里插入图片描述
在这里插入图片描述
所以我们要做的就是插入“下一页”分隔符(不是别的分隔符),然后再插入页眉。

操作之前的介绍

Word文档可以先将扩展名修改为“zip”然后解压,解压后的目录结构是这样的:
├── [Content_Types].xml
├── _rels
├── docProps
├── word
├──├── _rels
├──├── document.xml

别的文件和目录省略吧,主要是“document.xml”文件,建议研究Word的同窗们先研究这个,这里基本都是正文。
在这里插入图片描述

如何插入下一页分隔符

其实分隔符分开的就是sectPr,俗称section,就是说我们只要在上面在插入一个sectPr元素,这个文档就会是两个section也就是成为了两个不同的部分,这是插入不同页眉的基础。

/**
     * 给 {@link XWPFDocument} 设置下一页
     * <br />
     * 也只有设置下一页形式的分页符才可以分隔不同页面的表头
     *
     * @param document {@link XWPFDocument} 对象
     */
    public static void insertNextPageChar(XWPFDocument document) {
        // 首先获取 document 的 Section 信息
        CTBody body = document.getDocument().getBody();
        // 放心, 这个 body 肯定不为空, 否则这个文档就有问题了
        XWPFParagraph paragraph = document.createParagraph();
        // 新创建的段落肯定没有 PPr, 所以需要新创建一个
        CTPPr ctpPr = paragraph.getCTP().addNewPPr();
        // 这一句其实就是设置下一页的分页符了
        CTSectPr sectPr = ctpPr.addNewSectPr();
        // 先加入到 document 的 List 中
        Document parent = Document.getParentDocument(document);
        if (parent != null) {
            parent.addSectPr(sectPr);
        }
        if (!body.isSetSectPr()) {
            // 文档没设置了 sectPr
            return;
        }
        // 把文档上的 sectPr 中的某些属性赋值给新创建的段落的 sectPr
        CTSectPr bodySectPr = body.getSectPr();
        sectPr.setPgSz(bodySectPr.getPgSz());
        sectPr.setPgMar(bodySectPr.getPgMar());
        sectPr.setCols(bodySectPr.getCols());
        sectPr.setDocGrid(bodySectPr.getDocGrid());
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

看代码,其实是新创建了一个段落(XWPFParagraph),然后在段落的pPr里建了一个sectPr元素并赋值
在这里插入图片描述
后续会加上插入页眉。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/709498
推荐阅读
相关标签
  

闽ICP备14008679号