由于客户需要,我们需要实现将网页导出到word中的功能,在此过程中,尝试使用过openoffice、itext、wordapi等各种方法,都不尽如人意。openoffice导出的问题图片信息在word2007下看不到,itext导出嵌套表格格式会乱套、wordapi导出倒是正常,但是无法将图片信息一并导入到文件中。最后没有办法突发奇想用wps试试,没想到成功了。
在尝试之前因为不知道wps是否有相关的api或者com组件,事先致电了金山客服询问了相关事宜,经确认wps是提供com组件调用的,现在即附上导出代码供大家测试分享。
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;使用还是非常方便的推荐大家使用.