OPEN XML将自定义不可见数据添加到段落/表中

时间:2013-08-15 15:12:54

标签: ms-word openxml openxml-sdk

是否有办法存储段落的其他数据,这些数据会在用户打开并在MS Word中保存文档后保留。

我一直在使用CusotmXML,但事实证明,由于MS-Word从文档结构中剥离了所有CusotmXML元素,因此无法使用logner。

每个段落或表格都有一个我想要“配对”到我的数据源的ID。 所以稍后当我再次阅读docx时,我可以识别文档中每个未更改的段落/表的来源。

3 个答案:

答案 0 :(得分:1)

可能是插入SET字段。这会在文档中创建一个可以分配信息的书签。但是,没有办法保护它不被用户删除。也可能是数据字段。

与“消失”(我认为相当于“隐藏”字体格式)不同,如果用户习惯显示非打印信息,则不会显示信息。但是,如果用户切换字段代码(Alt + F9),它将显示。

答案 1 :(得分:0)

你可以在一个段落上有一个divId,在xmlns中:w14 =“http://schemas.microsoft.com/office/word/2010/wordml”有属性w14:textId和w14:paraId。

例如:

<w:p w14:textId="81a184ad" w14:paraId="81a184ad" >
  <w:pPr>
    <w:divId w:val="124349312"/>

有关详细信息,请参阅[MS-Docx]

或者,看一下内容控件,你可以将它们包装在段落和表格中(或放在它们里面)。这些都有ID属性;它们还允许您在其标记属性中存储任意文本。字符串的长度限制为120个字符。

答案 2 :(得分:0)

一个相当简单的解决方案,但您是否已使用自定义运行数据并将其隐藏起来使用Vanish

进行显示
<w:rPr>
   <w:vanish />
</w:rPr>

vanish添加到run properties会隐藏显示run,您可以使用它来存储自定义数据,而不会影响文档的输出。