如果想在线浏览word文档内容,可以将word文档转换为pdf格式然后在线预览pdf文档,也可以将word文档转换为html在线预览,后者的话,可以采用Aspose.Words、Microsoft.Office.Interop.Word、FreeSpire.Doc等package,不过Aspose需要商业许可,Microsoft.Office.Interop.Word需要安装word软件,FreeSpire.Doc虽然免费但有限制(如下图所示),本文学习调用FreeSpire.Doc将Word转换为html的基本用法。

VS2022新建控制台项目,在Nuget包管理器中搜索并安装FreeSpire.Doc包。

主要调用FreeSpire.Doc包的Document类进行格式转换,主要调用以下两个函数:
1)LoadFromFile函数,加载指定的word文档;
2)SaveToFile函数,将文档保存为指定格式的电子文件,函数形式如下图所示,支持将word文档保存为pdf、doc、ofd、html等多种格式。

最简单的代码仅包含3行即可将word转换为html,如下所示:
csharp
Document doc = new Document();
doc.LoadFromFile(inputFilePath);
doc.SaveToFile(outputFilePath,FileFormat.Html);
Document类的HtmlExportOptions属性用于用于精细控制Word文档转换为HTML时的各种输出选项,其主要属性如下:
| 序号 | 属性 | 说明 |
|---|---|---|
| 1 | CssStyleSheetType | 指定CSS样式的输出方式,从枚举值CssStyleSheetType内取值 |
| 2 | ImageEmbedded | 是否将文档中的图片嵌入到HTML内部,布尔值 |
| 3 | ImagesPath | 当ImageEmbedded为false时,此属性指定图片保存的外部目录路径。HTML文件将引用此路径下的图片 |
| 4 | IsTextInputFormFieldAsText | 是否将Word中的文本输入型表单字段导出为纯文本 |
| 5 | CssStyleSheetFileName | 指定外部CSS文件的文件名 |
| 6 | IsExportDocumentStyles | 是否导出文档样式 |
| 7 | HasHeadersFooters | 是否导出页眉页脚 |
最后是程序运行效果,使用上述程序将之前测试导出封面和表格内容的测试文档转换为html文件,在浏览器查看时可以看到基本和在word中的内容和格式保持一致。

参考文献:
1\]https://www.e-iceblue.cn/Introduce/Free-Spire-Doc-NET.html \[2\]https://blog.csdn.net/SunnyDays1011/article/details/150770382