我知道有很多问题有相同的标题,但我目前有一些问题,他们我没有得到正确的方法去.
我使用Open xml sdk 2.5和Power工具将.docx
文件转换为.html
使用HtmlConverter
类进行转换的文件.
我成功地将docx
文件转换为Html
文件,但问题是,html文件不保留文档文件的原始格式.例如.字体大小,颜色,下划线,粗体等不会反映到html文件中.
这是我现有的代码:
public void ConvertDocxToHtml(string fileName) { byte[] byteArray = File.ReadAllBytes(fileName); using (MemoryStream memoryStream = new MemoryStream()) { memoryStream.Write(byteArray, 0, byteArray.Length); using (WordprocessingDocument doc = WordprocessingDocument.Open(memoryStream, true)) { HtmlConverterSettings settings = new HtmlConverterSettings() { PageTitle = "My Page Title" }; XElement html = HtmlConverter.ConvertToHtml(doc, settings); File.WriteAllText(@"E:\Test.html", html.ToStringNewLineOnAttributes()); } } }
所以我只想知道是否有任何方法可以保留转换后的HTML文件中的格式.
我知道一些第三方API做同样的事情.但我更喜欢使用open xml或任何其他开源来做这件事.
PowerTools for Open XML刚刚发布了一个新的HtmlConverter模块.它现在包含一个开源的,免费实现从DOCX到HTML格式的转换.模块HtmlConverter.cs支持所有段落,字符和表格样式,字体和文本格式,编号和项目符号列表,图像等.见http://bit.ly/1bclyg9