We're sorry Aspose doesn't work properply without JavaScript enabled.

Free Support Forum - aspose.com

Aspose.Words for java获取文档页数错误

Aspose.Words for java 获取Word文档的页面数量。

使用的是最新版本的jar包,在windows 下显示不正常,在linux 环境下偶尔发生错误。

Document doc = new Document(Files.newInputStream(path)); doc.getPageCount(); 返回值是11 ,与实际页数不符合。

测试.zip (705.6 KB)

@Gavin_Zhang, 我无法在 Windows 上使用 Aspose.Words for Java 22.12 重现该问题。 在我的例子中,getPageCount 始终返回 633。Microsoft Word 也显示相同的页数。

如果您仍然遇到问题,请尝试找到一个一致重现的案例,然后提供示例代码和包含问题描述的文档。

@dshvydkiy
您是用的什么代码来获取的页数呢?能贴一下相关的代码给我吗?

@Gavin_Zhang 获取页数的代码与您的代码相同:

Document doc = new Document("in.docx"); 
doc.getPageCount();

发生此问题的原因可能是原始文档中使用的字体在执行文档处理的环境中不可用。 要构建文档布局,Aspose.Words 需要文档中使用的字体。 字体被替换 如果 Aspose.Words 找不到文档中使用的字体。 这可能会导致字体不匹配和文档布局差异,从而返回不正确的页码。 您可以实施 IWarningCallback 以在执行字体替换时收到通知。