C# 是否有类似于wkhtmltopdf的工具或库将html转换为word文档?

C# 是否有类似于wkhtmltopdf的工具或库将html转换为word文档?,c#,asp.net,asp.net-mvc,ms-word,C#,Asp.net,Asp.net Mvc,Ms Word,它必须能够处理css和javascript,因为页面包含“highcharts”javascript图表 它不必是一个外部过程,一个库也很好 基本上,我需要能够创建一个word文档,其中包含作为图像的highcharts以及一些文本和其他图形 任何想法都很好 以此为例 这在很大程度上取决于您试图转换的html文档的性质。一种简单的方法是使用Word automation打开一个.html文档,然后将其另存为.doc文档 object readOnly = false;

它必须能够处理css和javascript,因为页面包含“highcharts”javascript图表

它不必是一个外部过程,一个库也很好

基本上,我需要能够创建一个word文档,其中包含作为图像的highcharts以及一些文本和其他图形


任何想法都很好

以此为例

这在很大程度上取决于您试图转换的html文档的性质。一种简单的方法是使用Word automation打开一个.html文档,然后将其另存为.doc文档

        object readOnly = false;
        object isVisible = true;
        object missing = System.Reflection.Missing.Value; // Values we don't care about
        object fileName = "C:/webpage.htm";
        object newFileName = "C:/webpage.doc";       

        Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();

        // word.Visible = true; // To see what's happening

        Microsoft.Office.Interop.Word.Document document = word.Documents.Open(ref fileName, ref missing, ref readOnly, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);

        document.Activate();

        object saveFormat = Microsoft.Office.Interop.Word.WdSaveFormat.wdFormatDocument;

        document.SaveAs(ref newFileName, ref saveFormat, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);

        document.Close(ref missing, ref missing, ref missing);

  • 您必须添加对Microsoft.Office.Interop.Word或类似内容的引用
  • ref缺失参数的数量取决于您使用的Word版本
  • 当Word实例从系统文件夹开始时,必须在文件名中使用完整路径

您可以在C#中执行此操作。如果您使用的是VisualStudio,请查看Microsoft.Interop Services Hanks,这会以URL作为输入吗?word是否能够处理由javascript创建的dom元素?如果它显示c:/webpage.htm或任何用URL替换的文本,您可能需要也可能不需要进行一些URL编码。。无论您的用例是什么,您都必须对此进行试验。。这会让你从正确的方向开始。。另外,请密切注意上述公告中列出的注释。我希望这会有所帮助。请随意投票。这无法呈现图表。您有什么代码。。我不知道你在干什么除非我知道你写了什么谢谢