使用OpenXML查找Word文档页脚中书签的实现方法咨询
你当前使用的RootPart.RootElement仅指向Word文档的主正文根节点,页脚属于独立的FooterPart部件,未被包含在主正文的元素树中,因此无法通过主文档的Descendants查询获取到页脚内的书签。
你需要额外遍历文档的所有页脚部件,分别查询每个页脚内的书签节点,示例代码如下:
' 获取主文档内的所有书签 For Each bookmarkStart As DW.BookmarkStart In Doc.RootPart.RootElement.Descendants(Of DW.BookmarkStart)() Debug.WriteLine(bookmarkStart.Name) Next ' 遍历所有页脚部件,获取页脚内的书签 For Each footerPart As DW.FooterPart In Doc.RootPart.FooterParts For Each bookmarkStart As DW.BookmarkStart In footerPart.RootElement.Descendants(Of DW.BookmarkStart)() Debug.WriteLine(bookmarkStart.Name) Next Next
如果需要同时查询页眉内的书签,遍历Doc.RootPart.HeaderParts并执行相同的Descendants查询即可。
内容的提问来源于stack exchange,提问作者Len White
相关产品推荐
相关产品推荐

