天天看點

office文檔 線上預覽 (doc、ppt、xls)

調用微軟的api,将office文檔轉換為html,然後實作預覽。然後最後把得到的位址以iframe方式嵌入到網頁即可實作預覽。參考我們的實作方式:http://demo.kalcaddle.com/?user/loginSubmit&name=guest&password=guest

    之後發一些,office線上編輯、儲存的文章。dsoframer類似都是可行的方案。

如果需要内網,國外通路慢或者害怕檔案洩露,可以自信搭建一套。

需要在伺服器上安裝一套web office軟體, 用來實作轉換、輸出、儲存等功能。 可以以接口方式提供給第三方使用(其他語言、或服務)

效果可參考:http://url.cn/RtERE9

夠快網盤用的是這種方案,不過正版伺服器軟體是需要付費的;還有就是隻能搭建在windows

office365 這方面比較專業,可以參考:http://www.officeweb365.com/viewview.html

Office線上預覽及PDF線上預覽的實作方式大集合:http://www.officeweb365.com/officetoview.html

代碼片段(1)​​[全屏檢視所有代碼]​​

1. [代碼][JavaScript]代碼     

var 
            openOffice = 
           function
           (url,ext){
          
 
               
           var 
            app_url,temp_url;
          
 
               
           switch 
            (ext) {
          
 
                   
           case 
            'doc'
           :
          
 
                   
           case 
            'docx'
           :
          
 
                   
           case 
            'docm'
           :
          
 
                   
           case 
            'dot'
           :
          
 
                       
           app_url =
           'http://sg1b-word-view.officeapps.live.com/wv/wordviewerframe.aspx?ui=zh-CN&rs=zh-CN&WOPISrc='
           ;
          
 
                       
           break
           ;
          
 
                   
           case 
            'ppt'
           :
          
 
                   
           case 
            'pptm'
           :
          
 
                   
           case 
            'pptx'
           :
          
 
                       
           app_url =
           'http://sg1b-powerpoint.officeapps.live.com/p/PowerPointFrame.aspx?PowerPointView=ReadingView&ui=zh-CN&rs=zh-CN&WOPISrc='
           ;
          
 
                       
           break
           ;          
          
 
                   
           case 
            'xls'
           :
          
 
                   
           case 
            'xlsb'
           :
          
 
                   
           case 
            'xlsm'
           :
          
 
                   
           case 
            'xlsx'
           :
          
 
                       
           app_url = 
           'http://sg1b-excel.officeapps.live.com/x/_layouts/xlviewerinternal.aspx?ui=zh-CN&rs=zh-CN&WOPISrc='
           ;
          
 
                       
           break
           ;
          
 
                   
           default
           :
           break
           ;
          
 
               
           }
          
 
               
           temp_url = 
           'http://sg1b-15-view-wopi.wopi.live.net:808/oh/wopi/files/@/wFileId?wFileId='
           ;
          
 
               
           temp_url += encodeURIComponent(url);
          
 
               
           return 
            app_url+encodeURIComponent(temp_url)+
           '&access_token=1&access_token_ttl=0'
           ;
          
 
           }