由於客戶需要,我們需要實現將網頁導出到word中的功能,在此過程中,嘗試使用過openoffice、itext、wordapi等各種方法,都不盡如人意。openoffice導出的問題圖片信息在word2007下看不到,itext導出嵌套表格格式會亂套、wordapi導出倒是正常,但是無法將圖片信息一並導入到文件中。最後沒有辦法突發奇想用wps試試,沒想到成功了。
在嘗試之前因為不知道wps是否有相關的api或者com組件,事先致電了金山客服詢問了相關事宜,經確認wps是提供com組件調用的,現在即附上導出代碼供大家測試分享。
C#代碼
- WPS.Application wps = null;
- try
- {
- wps = new WPS.Application();
- }
- catch (Exception ex) {
- WriteLine(ex.Message);
- return "";
- }
- WPS.Document doc = wps.Documents.Open(httpUrl, false, true);
- string filename = System.DateTime.Now.Year.ToString() + System.DateTime.Now.Month.ToString() + System.DateTime.Now.Day.ToString() +
- System.DateTime.Now.Hour.ToString() + System.DateTime.Now.Minute.ToString() + System.DateTime.Now.Second.ToString();
-
-
- string serverPath = Server.MapPath("~/doc/");
- string savePath = serverPath + filename + ".doc";
- object saveFileName = savePath;
- doc.SaveAs(savePath, WPS.WdSaveFormat.wdFormatDocument);
-
- doc.Close(WPS.WdSaveOptions.wdSaveChanges, WPS.WdOriginalFormat.wdWordDocument, WPS.WdRoutingSlipStatus.wdNotYetRouted);
- wps.Quit(WPS.WdSaveOptions.wdSaveChanges, WPS.WdOriginalFormat.wdWordDocument, WPS.WdRoutingSlipStatus.wdNotYetRouted);
在此需要先引用wps的com組件,並且using WPS;使用還是非常方便的推薦大家使用.