将word文档转换为html格式尤其具有显著的优势,它不仅能够确保文档内容在多种设备和平台上保持一致灵活的显示,还便于通过网络进行传播和集成到各种web应用中。随着越来越多的企业和开发者寻求更灵活、更具兼容性的文件处理方式,.net框架下的c#语言凭借其强大的互操作性支持成为了实现这一转换的理想选择。本文将介绍如何在.net平台使用c#将word文档转换为html文件。
本文所使用的方法需要用到免费的free spire.doc for .net,nuget:pm> install-package freespire.doc。
用c#将word文档转换为一般html格式
我们可以使用document.loadfromfile方法载入word文档,然后直接使用savetofile(string:filename, fileformat.html)方法将其转换为html格式并保存。这样转换出的结果会包含html文件、css文件以及图片文件夹(如果word文档中有图片)。以下是操作步骤示例:
导入所需模块。
创建document实例。
使用document.loadfromfile()方法载入word文档。
使用document.savetofile(string:filename, fileformat.html)方法将其转换为html格式并保存。
代码示例
using spire.doc;
namespace wordtohtml
{
class program
{
static void main(string[] args)
{
// 创建document实例
using (document doc = new document())
{
// 载入word文档
doc.loadfromfile("sample.docx");
// 将其转换为html并保存
doc.savetofile("output/wordtohtml.html", fileformat.html);
}
}
}
}
结果

用c#将word文档转换为单个html文件
通过配置document.htmlexportoptions.cssstylesheettype属性和document.htmlexportoptions.imageembedded属性,我们可以设置将css和图像嵌入到单个html文件中。以下是操作步骤示例:
- 导入所需模块。
- 创建document实例。
- 使用document.loadfromfile()方法载入word文档。
- 将document.htmlexportoptions.cssstylesheettype属性设置为cssstylesheettype.internal,嵌入css样式到生成的html文件中。
- 将document.htmlexportoptions.imageembedded属性设置为true,嵌入图像到生成的html文件中。
- 使用document.savetofile(string:filename, fileformat.html)方法将其转换为html格式并保存。
代码示例
using spire.doc;
namespace wordtohtml
{
class program
{
static void main(string[] args)
{
// 创建document实例
using (document doc = new document())
{
// 载入word文档
doc.loadfromfile("sample.docx");
// 设置嵌入css
doc.htmlexportoptions.cssstylesheettype = cssstylesheettype.internal;
// 设置嵌入图像
doc.htmlexportoptions.imageembedded = true;
// 将其转换为html并保存
doc.savetofile("output/wordtohtmlembedded.html", fileformat.html);
}
}
}
}
结果

转换时自定义转换选项
我们还可以通过document.htmlexportoptions属性自定义其他转换选项,以下是支持的选项信息:
| 属性 | 描述 |
|---|---|
| cssstylesheettype | 指定 html css 样式表的类型(外部或内部) |
| cssstylesheetfilename | 指定 html css 样式表文件的名称 |
| imageembedded | 指定是否使用数据 uri 方案将图像嵌入到 html 代码中 |
| imagespath | 指定导出 html 中图像的文件夹路径 |
| usesavefilerelativepath | 指定图像文件路径是否相对于 html 文件路径 |
| hasheadersfooters | 指定是否应在导出的 html 中包含页眉和页脚 |
| istextinputformfieldastext | 指定是否将文本输入表单字段以文本形式导出到 html 中 |
| isexportdocumentstyles | 指定是否将文档样式导出到 html 的 <head> 部分 |
以下是操作步骤示例:
- 导入所需模块。
- 创建document实例。
- 使用document.loadfromfile()方法载入word文档。
- 使用document..htmlexportoptions中的属性自定义转换选项。
- 使用document.savetofile(string:filename, fileformat.html)方法将其转换为html格式并保存。
代码示例
using spire.doc;
namespace wordtohtml
{
class program
{
static void main(string[] args)
{
// 创建document实例
using (document doc = new document())
{
// 载入word文档
doc.loadfromfile("sample.docx");
// 设置css文件名
doc.htmlexportoptions.cssstylesheettype = cssstylesheettype.external;
doc.htmlexportoptions.cssstylesheetfilename = "customcssfilename.css";
// 设置不嵌入图像,并设置图像文件夹
doc.htmlexportoptions.imageembedded = false;
doc.htmlexportoptions.usesavefilerelativepath = true;
doc.htmlexportoptions.imagespath = "images/";
// 设置导出文档样式到head部分
doc.htmlexportoptions.isexportdocumentstyles = true;
// 将其转换为html并保存
doc.savetofile("output/wordtohtmlembedded.html", fileformat.html);
}
}
}
}
结果

文中用到的示例word文档:

本文演示了如何在.net中用c#转换word文档为html格式,并设置转换选项。
以上就是.net使用c#实现将word文档转换为html格式的详细内容,更多关于c# word转html的资料请关注代码网其它相关文章!
发表评论