Java在Word指定段落/文本位置插入分页符

博客 动态
0 323
羽尘
羽尘 2022-04-11 14:57:49
悬赏:0 积分 收藏

Java 在Word指定段落/文本位置插入分页符

在Word插入分页符可以在指定段落后插入,也可以在特定文本位置处插入。本文,将以Java代码来操作以上两种文档分页需求。下面是详细方法及步骤。

【程序环境】

在程序中导入jar,如下两种方法:

方法1:手动引入。将 Free Spire.Doc for Java 下载到本地,解压,找到lib文件夹下的Spire.Doc.jar文件。在IDEA中打开如下界面,将本地路径中的jar文件引入Java程序:

方法2(推荐使用):通过 Maven 仓库下载。如下配置pom.xml:

<repositories>        <repository>            <id>com.e-iceblue</id>            <url>https://repo.e-iceblue.cn/repository/maven-public/</url>        </repository>    </repositories><dependencies>    <dependency>        <groupId>e-iceblue</groupId>        <artifactId>spire.doc.free</artifactId>        <version>5.2.0</version>    </dependency></dependencies>

 

【插入分页符】

1.在指定段落后插入分页符

Java

import com.spire.doc.Document;import com.spire.doc.FileFormat;import com.spire.doc.Section;import com.spire.doc.documents.BreakType;import com.spire.doc.documents.Paragraph;public class PageBreak1 {    public static void main(String[] args) {        //创建Document类的对象        Document document = new Document();        //加载Word文档        document.loadFromFile("test.docx");        //获取第一节        Section section = document.getSections().get(0);        //获取第一节中的第3个段落        Paragraph paragraph = section.getParagraphs().get(2);        //添加分页符        paragraph.appendBreak(BreakType.Page_Break);        //保存文档        document.saveToFile("output.docx", FileFormat.Docx_2013);    }}

 

2.在指定文本位置后插入分页符

Java

import com.spire.doc.Break;import com.spire.doc.Document;import com.spire.doc.FileFormat;import com.spire.doc.documents.BreakType;import com.spire.doc.documents.Paragraph;import com.spire.doc.documents.TextSelection;import com.spire.doc.fields.TextRange;public class PageBreak2 {    public static void main(String[] args) {        //创建Document类的实例        Document document = new Document();        //加载Word文档        document.loadFromFile("test.docx");        //查找指定文本        TextSelection selection = document.findString("“东盟共同体”宣告成立。", true, true);        //获取查找的文本范围        TextRange range = selection.getAsOneRange();        //获取文本范围所在的段落        Paragraph paragraph = range.getOwnerParagraph();        //获取文本范围在段落中的位置索引        int index = paragraph.getChildObjects().indexOf(range);        //创建分页        Break pageBreak = new Break(document, BreakType.Page_Break);        //在查找的文本位置后面插入分页符        paragraph.getChildObjects().insert(index + 1, pageBreak);        //保存文档        document.saveToFile("InsertPageBreakAfterText.docx", FileFormat.Docx_2013);    }}

 

—END—

 

posted @ 2022-04-11 14:50 E-iceblue 阅读(1) 评论(0) 编辑 收藏 举报
回帖
    羽尘

    羽尘 (王者 段位)

    2335 积分 (2)粉丝 (11)源码

     

    温馨提示

    亦奇源码

    最新会员