在 Java 中的 Word 中插入分页符
作者:互联网
分页符是一个特殊的标记,它将结束当前页面并开始一个新页面。在 Word 中,您可以在所需的任何位置插入分页符,并且它不会更改文档中上一页的格式。本文将分享如何使用免费的Spire.Doc for Java库从以下2个方面将分页符插入到Word文档中。
-
在特定段落后插入分页符
-
在特定文本后插入分页符
安装库
方法一:下载免费库并解压缩。然后将 Spire.Doc.jar 文件作为依赖项添加到 Java 应用程序中。
方法二:通过向pom.xml添加以下配置,直接将jar依赖添加到maven项目中。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.doc.free</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
在特定段落后插入分页符
使用 Free Spire.Doc for Java,您可以使用 Section.getParagraphs().get(paragraphIndex) 方法获取指定的段落,然后使用 Paragraph.appendBreak(BreakType.Page_Break) 方法向段落添加分页符。完整的示例代码如下所示。
import com.spire.doc.Document;
import com.spire.doc.Section;
import com.spire.doc.documents.BreakType;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.FileFormat;
public class InsertPageBreakAfterParagraph {
public static void main(String[] args){
//Create a Document instance
Document document = new Document();
//Load a Word document
document.loadFromFile("Budget.docx");
//Get the first section
Section section = document.getSections().get(0);
//Get the 2nd paragraph in the section
Paragraph paragraph = section.getParagraphs().get(1);
//Append a page break to the paragraph
paragraph.appendBreak(BreakType.Page_Break);
//Save the result document
document.saveToFile("InsertPageBreak.docx", FileFormat.Docx_2013);
}
}
在特定文本后插入分页符
要在特定文本之后插入分页符,您需要首先找到指定的文本,然后获取其文本范围以及文本范围的位置索引。最后,您可以使用 Paragraph.getChildObjects().insert() 方法在指定文本之后插入分页符。完整的示例代码如下所示。
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 InsertPageBreakAfterText {
public static void main(String[] args){
//Create a Document instance
Document document = new Document();
//Load a Word document
document.loadFromFile("Budget.docx");
//Search a specific text
TextSelection selection = document.findString("anticipated", true, true);
//Get the text range of the searched text
TextRange range = selection.getAsOneRange();
//Get the paragraph where the text range is located
Paragraph paragraph = range.getOwnerParagraph();
//Get the position index of the text range in the paragraph
int index = paragraph.getChildObjects().indexOf(range);
//Create a page break
Break pageBreak = new Break(document, BreakType.Page_Break);
//Insert the page break after the searched text
paragraph.getChildObjects().insert(index + 1, pageBreak);
//Save the result document
document.saveToFile("InsertPageBreakAfterText.docx", FileFormat.Docx_2013);
}
}