2

我正在尝试使用 c# 中的 Interop 查找 Word 文档部分中的页数。

主要目标实际上是找出标题是否可见。(例如,文档只有 1 页,DifferentFirstpageHeaderFooter已启用,因此wdHeaderFooterPrimary存在但技术上未显示(因为只有 1 页而不是 2 页或更多)。)因此,如果您能找到不同的方法来弄清楚如何做到这一点,我也很好。

目前,WdInformation.wdActiveEndPageNumber如果文档中只有 1 个部分,但如果有 2 个部分,并且我正在处理第二部分,则可以为我wdActiveEndPageNumber提供包括第 1 部分在内的总页数。

var section = headerFooter.Parent as Section;
int numOfPages = section.Range.Information[WdInformation.wdActiveEndPageNumber];
4

1 回答 1

4

我没有为此的 C#,但是使用 VBA 语法,“n 节”需要的是

一个。如果n = 1那么你看

theDocument.sections[1].Range.Information[WdInformation.wdActiveEndPageNumber]

湾。如果n > 1你确定第 n 部分存在,那么看看

theDocument.sections[n].Range.Information[WdInformation.wdActiveEndPageNumber]-
theDocument.sections[n-1].Range.Information[WdInformation.wdActiveEndPageNumber]

请注意,如果您在第 n 部分的最后一页上有连续的分节符,则案例 (b) 可以返回 0。我不知道这对于您将拥有的标题意味着什么,但我希望这意味着您只有第一页标题。

于 2012-10-21T14:32:14.580 回答