首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将word文档(.docx)与文档模板(.dotx)进行比较

将word文档(.docx)与文档模板(.dotx)进行比较
EN

Stack Overflow用户
提问于 2015-10-16 05:33:54
回答 1查看 626关注 0票数 0

是否可以将word文档(.docx)与microsoft中生成的文档模板(.dotx)进行比较。

我想以编程方式使用c#进行这种比较。

我希望逐字比较这两个文档,以便确定文档属于哪个模板。我不只是想比较两者的大小,但我也想比较内容。

通过这个比较,我想得到以下结果。

  1. 从哪个文档模板生成文档。
  2. 在文档模板中,我希望检查存储特定信息的位置。 例如,我想搜索某人的通信信息,然后遍历文档并检查模板在哪个位置有地址区域/区段(即左上角、顶部中心、段落中、正文中等)。
  3. 同样,我也想提取其他信息,比如链接到其他文档等等。
  4. 在获得这些职位后,我希望从.Docx文件中获取该信息。 比如说,如果我发现地址在左上角和有五个链接引用其他文件在五个不同的段落。然后我想要的是得到地址并将其保存到一个变量中。在此之后,我希望将这些链接内容从占位符替换为实际的hyperLinks。也就是说,如果一个链接指的是Doc,那么我不只是显示一个纯文本,我希望用指向Doc的超链接来替换它。

有什么建议吗?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2015-10-23 17:56:55

你的问题太含糊不清了,无法给出一个很好的答案,然而.

  1. 为了找出从哪个模板生成了文档,对象模型提供了属性: Document.AttachedTemplate with将返回完整的文件名。这当然比逐字比较要好(这也很费时)。
  2. Word对象模型还提供了方法CompareDocuments (属于Word.Application类)。这将“突出”两个文件文本内容的差异。
  3. 链接将在Document.Hyperlinks集合中找到。
  4. 得到事物的位置有点不太容易,这取决于你真正指的是“左上角”等等。最好是使用内容控件、表单字段和/或书签来构造模板,以便您能够唯一地识别重要的部分。但是,Word确实提供了Range.get_Information方法,如果您真正想要的话,它可以返回页面上的相对位置和绝对位置。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33163201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档