轉帖|其它|編輯:陳津勇|2019-09-29 10:28:26.240|閱讀 526 次
概述:本文主要介紹文檔管理控件WebOffice的產品架構原理。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
WebOffice是流行于國內市場的文檔管理控件。20多年來,經華爾太科技研發團隊不斷迭代升級,WebOffice已更新至2019版本,最新版永久突破谷歌Chrome、火狐FireFox、EDGE等瀏覽器的插件限制,同時支持國內外所有最新版瀏覽器,支持HTTP/HTTPS打開保存文件,是在線編輯Office文檔的首選控件!
本文將為大家介紹WebOffice控件的產品架構原理,請繼續往下閱讀↓
1、瀏覽器通過ocx.js(或webofficeocx.js)文件加載控件,在ocx.js代碼中的獲取控件ID,一般名稱為:WebOffice,從而得到JS編控的控件對象,具對代碼表示如:
document.getElementById("WebOffice")
2、在網頁body標簽onload代碼中加入JS,用于設置控件打開或新建一個WORD、EXCEL等文檔,在打開文檔考慮網絡速度等原因最好在控件打開文檔前設置一段JS代碼用于延時加載控件類似代碼如下:
WebOffice = document.getElementById("WebOffice"); if (WebOffice !='') { //等待控件初始化完畢,時間長短可以根據網絡速度設定。 setTimeout('openfile()',100); }
3、接下來即可執行控件的打開或新建方法,在新建文檔時建議統一用DOC、XLS、PPT格式,實現OFFICE2003與高版本的OFFICE的DOCX、XLSX,PPTX格式兼容。類似代碼如下(注意參數格式):
document.getElementById("WebOffice").Open(strOpenUrl,true,"Word.Document","",""); document.getElementById("WebOffice").Open(strOpenUrl,true,"Excel.Sheet","",""); document.getElementById("WebOffice").Open(strOpenUrl,true,"PowerPoint.Show","",""); document.getElementById("WebOffice").CreateNew("Excel.Sheet.8"); document.getElementById("WebOffice").CreateNew("PowerPoint.Show"); document.getElementById("WebOffice").CreateNew("Word.Document");
新建文檔時也可以采用模板的方式新建文檔,方法就是打開一個現成的模板文件即可,類似代碼如下:
strRoot=//www.aaa.com/; document.getElementById("WebOffice").Open(strRoot+'temp/excel.xls',true,"Excel.Sheet","","");
4、接下來控件會觸發加載事件,執行上面Open或CreatNew方法,當打開文檔時,控件實現GET請求到指定的URL下載Word或Excel文檔,URL格式類似如下://www.aaa.com/writefile.php?id=21
5、Web服務器收到控件發來的URL請求后,執行如上述Writefile.php代碼腳本,代碼腳本執行相應動作,依參數ID值到服務器數據庫或硬盤對應位置找到OFFICE文檔,以二進制格式讀取WORD或Excel文檔,返回給WEB服務器。
6、WEB服務器得到OFFICE文檔的二進制數據流后,通過網絡傳遞給控件接收,當控件接收到完整的WORD或EXCEL等文檔后,調用控件內部方法,實現打開WORD文檔并顯示到前端Web頁面。
7、當用戶編輯好文檔后,點擊網頁上的保存按鈕,網頁上的保存按鈕通過JS或Vbscript調用控件的SAVE方法保存到服務器指定位置,類似代碼如下:
strURL=”//www.aaa.com/webofficephp/php/uploadedit.php?oper=edit&flsid=956.doc&flag=1” document.getElementById("WebOffice").Save(strURL);
上述代碼重點是URL相關的腳本代碼和參數設置,如上述代碼參數是:oper代碼是修改還是新建保存 ,flsid是文檔在服務器數據庫(或硬盤)對應位置的ID號,FLAG是文檔類型,“1”表示doc格式,“2”表示xls格式,“3”表示ppt格式,“11”表示DOCX格式,“12”表示XLS格式,“13”表示pptx格式等等,具體方式可以技術開發人員依自身需求而定。上述不是必須采用,但建議用戶使用上述FLAG標記方式,用于記住文檔格式,供控件以后打開時設置對應參數。
想要獲得 WebOffice 更多資源或正版授權的伙伴,
掃描關注慧聚IT微信公眾號,及時獲取最新動態及最新資訊
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: