Docx4j开发手册-9|Docx4j的分页和分节
一、分页
1.1 分页标记
分页标记目前共发现了两种:
- 第一种是Br对象
- 第二种是R.LastRenderedPageBreak对象
1.2 主要区别
Br | R.LastRenderedPageBreak |
---|---|
可以用于实现文本的换行,但它本身并不是一个分页标记。标准的 Br 是简单的换行,即在同一段落内开始新的一行。不过,docx4j以及Word等文字处理软件中也支持一种特殊的换行类型,如 Br.Type.PAGE ,这种类型的换行可以强制分页,即在该换行处开始新的一页。但通常所说的 Br 默认指的是软换行,而非强制分页。 |
不是一个常见的手动插入的分页标记,是Word在处理文档时内部使用的一种记录机制,用来标记文档在上次渲染时每一页的结束位置。它更多地是作为一个元数据或者系统使用的标记,帮助Word记住文档的页面布局状态,而不是直接用于文档内容的格式设置。因此,它不是用户直接操控的分页,而是一个反映文档渲染历史状态的元素。 |
1.3 使用
在判断是否换页时,应以Br对象为准,R.LastRenderedPageBreak只是word计算出的一个临时变量。
二、分节
2.1 分节标记
分节标记也是两种:
- 第一种是在P对象的ppr属性中的sectPr对象
- 第二种是在body最后的sectPr对象
2.2 主要区别
ppr属性中的sectPr对象 | body最后的sectPr对象 |
---|---|
全文只有一个章节时,不会出现。 最后一章节无ppr属性中的sectPr对象 |
一定会出现,代表了全文最后一个章节。 |
2.3 使用
章节不存在单独的对象,以段落配置中的SectPr属性存在
全文单章节时,以body最后的sectPr对象为准
全文多个章节时,除了最后一个章节使用body最后的sectPr对象,其他的使用段落样式中的sectPr