2013-12-23 106 views
4

我知道有很多問題有相同的標題,但我目前有一些問題,他們我沒有得到正確的方式去。如何將docx轉換爲html格式的文件使用打開xml格式

我使用Open XML SDK 2.5與Power tool一起.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或任何其他開源來做到這一點。

+0

PowerTools for Open XML剛剛發佈了一個新的HtmlConverter模塊,其中包含一個開放源代碼,免費實現從DOCX到HTML格式的CSS轉換。模塊HtmlConverter.cs支持所有段落,字符和表格樣式,字體和文本格式,編號和項目符號列表,圖像等。請參閱http://bit.ly/1bclyg9 –

回答

0

您的最終結果不會像您的Word文檔結果一樣,但this link可能會有所幫助。

+0

這不會轉換格式,如段落字體或字符字體。 – Sachin

1

您可能希望找到一個外部工具來幫助你做到這一點,像Aspose Words

6

PowerTools的開放XML剛剛發佈了一個新的HtmlConverter模塊。它現在包含一個開放源代碼,免費實現從DOCX到HTML格式的CSS轉換。模塊HtmlConverter.cs支持所有段落,字符和表格樣式,字體和文本格式,編號和項目符號列表,圖像等。請參閱http://bit.ly/1bclyg9

相關問題