如何以编程方式将注释插入Microsoft Word文档?

时间:2009-02-20 10:02:47

标签: python ms-word common-lisp openxml

寻找一种以编程方式将注释(使用Word中的注释功能)插入MS Word文档中的特定位置的方法。我更喜欢一种可用于最新版本的MS Word标准格式并可在非Windows环境中实现的方法(理想情况下使用Python和/或Common Lisp)。我一直在看OpenXML SDK,但似乎找不到解决方案。

2 个答案:

答案 0 :(得分:7)

这是我做的:

  1. 创建一个带有单词的简单文档(即非常小的文档)
  2. 在Word中添加评论
  3. 另存为docx。
  4. 使用python的zip模块访问存档(docx文件是ZIP存档)。
  5. 转储归档中“word / document.xml”条目的内容。这是文档本身的XML。
  6. 这可以让您知道您需要做什么。之后,您可以使用Python中的一个XML库来解析文档,更改文档并将其添加回扩展名为“.docx”的新ZIP存档。只需复制原始ZIP中的所有其他条目,即可获得新的有效Word文档。

    还有一个可能有用的图书馆:openxmllib

答案 1 :(得分:2)

如果这是服务器端(非交互式),则不支持使用Word应用程序本身(但我认为这不适用)。因此,要么采用该路线,要么使用OpenXML SDK来学习创建评论所需的标记。有了这些知识,就是操纵数据。

.docx格式是一个带有定义结构的XML文件的ZIP,因此大多数情况下,一旦进入ZIP并获得正确的XML文件,就会修改XML DOM。

最佳途径可能是获取docx,复制它,添加注释(使用Word),并进行比较。 diff将显示您需要在SDK(或ISO / Ecma标准)中查找的元素/结构类型。