无法使用OpenXml从Word文档中获取页数

人气:714 发布:2022-10-16 标签: xml c# openxml openxml-sdk docx

问题描述

我使用带有.Net core 3.1的OpenXML SDK v2.11.3,当我尝试从Word文档中获取总页数时,有时会返回空值。

using (var document = WordprocessingDocument.Open(memoryStream, true))
{​​​​
    var pages = Convert.ToInt32(document.ExtendedFilePropertiesPart.Properties.Pages.Text);
}
System.NullReferenceException:‘对象引用未设置为 对象的实例。‘ DocumentFormat.OpenXml.ExtendedProperties.Properties.Pages.get 返回空。

从docx文件中获取总页数的最佳方法是什么?

推荐答案

分页是取决于呈现的动态属性 任何给定的Docx文件可能从未呈现过,也可能从未呈现过,并且 OpenXML SDK不渲染或执行渲染所需的计算,

您不一定能从任意Docx文件中获取页数。

有关更多详细信息和一些有限的解决办法,请参阅How to access OpenXML content by page number?

129