在.Net中将Html转换为Word

我需要从HTML内容(在ASP.NET服务器应用程序上)创建一个word文件,但是找不到一种强有力的方法。 所以决定在这里进行讨论,看看有什么可能的选择。

Aspose有一个.NET组件 ,但价格太高,所以不能成为解决方案(由于预算问题)。

我们希望这种转换能够保留表格,图像,隐藏不可见元素,链接等。

这里有类似的讨论,但提供的解决方案都围绕Office Interop,这不是服务器应用程序的推荐解决方案。

任何的想法? 基本上Aspose这样的组件是如何工作的?

我建议使用OpenXml API编写代码,您可以导航DOM并以编程方式将元素添加到word文档中。 由于您正在解释标记并尝试转换它,因此它不是一项简单的任务。

Open XML的链接: http : //www.microsoft.com/download/en/details.aspx? displaylang = en& id = 5124

已经完成了艰苦的工作吗? 在codeplex上似乎有一个项目。

描述HTML到docx转换器的博客文章
关于codeplex的项目

可能值得查看Microsoft自己的XSLT推理工具,该工具可以从XML输入生成WordML。

如果您对文档本身的源代码是HTML / XHTML / XML很灵活,那么这很容易就能完成工作。

http://msdn.microsoft.com/en-us/library/aa212886%28v=office.11​​%29.aspx

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=3412

我过去曾用它来从ASP .NET应用程序中生成Word文档,该应用程序从SQL存储过程中获取源XML数据。

该工具可能有点气质,但它产生的XSLT有点卫生,它可以正常工作。

如果docx是可应用的,您可以创建一个word文档,将其另存为docx,对xml进行反向工程并创建自己的xml / docx。 我用excel / xslx做到了,它完美无缺。 为了加快速度,我们将XML创建为文本并加入字符串(在我们的数据之前 – 我们的数据 – 在我们的数据之后)。

RTF格式不是标准的afaik,但它广泛传播。 创建RTF文档并将其作为word文档返回。 Word打开rtf没有问题。

创建HTML文档并将其作为word文档返回。

HTH