C#OpenXML 2.0替换段落和正文中的EMPTY书签

时间:2013-09-13 16:57:01

标签: c# openxml openxml-sdk bookmarks

我测试了很多解决方案,在legalcube.de(这是最好看的),甚至是在这里找到的解决方案。

但是,这不适用于我的文件。我的书签部分是“正文”,而不是在段落或表格中,因此最后给出的示例在尝试将给定的body元素作为段落强制转换时抛出异常。当然,我可以处理异常,但我不知道如何使代码工作。

是否有任何真正有效的解决方案可以用OpenXML替换EMPTY书签?

以下是使用Open XML 2.0 Productivity Tool的文档结构示例:
http://abload.de/image.php?img=13-09-201318-35-08nsx2i.png

元素的代码:
http://abload.de/image.php?img=13-09-201318-41-25eijdo.png

PS:与问题Replace bookmark contents in Word using OpenXml中的问题/问题相同,意味着,我的文档中也有“灰色”框。

在生产力工具的帮助下,我看到,结构有些奇怪: BookmarkStart在Body中,然后有一个段落。在段落中,我找到了BookmarkEnd。 例如:

<> w:bookmarkStart (BookmarkStart)  
  <> w:p (Paragraph)  
  <> w:pPr (ParagraphProperties)  
  <> w:r (Run)  
  <> w:r (Run)  
  <> w:r (Run)  
  <> w:bookmarkEnd (BookmarkEnd) 

这是格式良好的OpenXML文件吗?

0 个答案:

没有答案