java - 计算 docx 文档中的页数

标签 java docx docx4j

我有一个word文件,我想计算其中有多少页。

该文件是使用 Docx4Java 创建的。

以前有人这样做过吗?

谢谢!

最佳答案

docx4j 没有页面布局模型,因此它无法告诉您页数。

您可以使用 FOP 的页面布局模型获得大致的页数。 docx4j 的 PDF 输出现在支持“2 pass”生成:

  • 第一次计算页数
  • 第二遍生成 pdf

参见https://github.com/plutext/docx4j/blob/master/src/main/java/org/docx4j/convert/out/fo/AbstractPlaceholderLookup.javahttps://github.com/plutext/docx4j/blob/master/src/main/java/org/docx4j/convert/out/fo/ApacheFORenderer.java

因此,执行第一遍会给你(大约)你想要的东西。这使用 org.apache.fop.apps.FormattingResults 来记录页面序列或整个文档中的页数。

另一种方法可能是使用 LibreOffice/OpenOffice(或 Microsoft Word)。

关于java - 计算 docx 文档中的页数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18466389/

相关文章:

python - “CT_Highlight”对象没有属性 'attribute'

r-markdown - 是否可以提高从 RMarkdown 的 TikZ 插入 Word 文档的图像的分辨率?

java - 为 DocX4J 生成的 Excel 行添加背景颜色

java - Docx4j 库不是线程安全的。解决此问题的可能方法有哪些?

java - Docx4j:获取段落的样式名称

javac e java 命令行

java - eclipse : Maven - context menu does not display the option "Search dependency for..."

java - 过滤所有查询的数据

Java Web 服务 - 用户保护 Web 方法

java - 用于从两个格式化源创建页面的适当报告合并技术