如何从 Word 文档中提取 RTF / HTML 文本?

Posted

技术标签:

【中文标题】如何从 Word 文档中提取 RTF / HTML 文本?【英文标题】:How to extract RTF / HTML text from a Word document? 【发布时间】:2010-11-12 13:56:43 【问题描述】:

上下文:我使用 Microsoft 发布的 DSOFramer 示例将 Word 嵌入到 Winforms 中。现在,我可以使用 Word 文档的所有格式选项编写文本了。

问题:我可以使用 doc.Content.Text 从文档中提取基本文本(文档是对我的 Word 文档的引用),但我不知道如何获取带有格式的文本,或者RTF 或 html。我跳到 Word 文档有类似于 RichTextBox 中的 Rtf 属性的东西,但似乎并非如此。那么我应该如何获得格式化的文本呢?

【问题讨论】:

【参考方案1】:

您可以使用剪贴板:

Microsoft.Office.Interop.Word.Document doc = 
    axFramerControl1.ActiveDocument as Microsoft.Office.Interop.Word.Document;
doc.Content.Select();
doc.Content.Copy();
this.richTextBox1.Paste();

【讨论】:

感谢您的建议。我已经想到了这一点,但出于两个原因,更多的是作为最后的手段。 1-这意味着有一个隐藏的 RichTextBox 可以将内容粘贴到其中并为我进行格式化。 2- 作为用户,我讨厌那些认为自己拥有剪贴板的应用程序。剪贴板应该供用户个人使用。但我想我可以保存它的内容并在我完成转换后立即重新建立它。仍然是一个非常丑陋的解决方法。我希望 Doc 格式能为我们提供更多。 我知道的唯一替代选择是做一个 doc.SaveAs 到 RTF,然后从磁盘读取它 (codeproject.com/KB/cs/convertdocintootherformat.aspx)。

以上是关于如何从 Word 文档中提取 RTF / HTML 文本?的主要内容,如果未能解决你的问题,请参考以下文章

word打开是乱码怎么办 word打开是乱码的解决方法

Html 转 Doc(Word) 或 RTF 格式

利用POI技术从数据库里提取数据,生成一个Excel文档或者Word文档

如何把word文档rtf类型文件内的数据导入到excel?请高手详细解答一下

如何从EXCEL中提取相应数据批量生成WORD文档

以编程方式从 Word 2007 文档中提取宏 (VBA) 代码