整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          文檔在線預覽(三)使用前端實現word、excel、

          文檔在線預覽(三)使用前端實現word、excel、pdf、ppt 在線預覽

          于實現文檔在線預覽的做法,之前文章提到了的兩種實現方式:

          1、通過將文檔轉成圖片:詳見《文檔在線預覽(一)通過將txt、word、pdf轉成圖片實現在線預覽功能》;

          2、將文檔轉成html:詳見《文檔在線預覽(二)word、pdf文件轉html以實現文檔在線預覽》;

          其實除了這兩種實現方式之外之外,還有一種常見的做法就是在前端在通過相關的在線預覽組件來實現預覽

          實現方案

          在網上的找了一圈實現方案,發現還挺多開源組件可以實現,整理了一下這些開源組件放在了下面的表格里,里面有一些是可以直接通過npm在vue中引入使用。


          文檔格式

          相關的開源組件

          word(docx)

          docx-preview、mammoth

          pdf

          pdf.js、pdfobject.js、vue-pdf

          excel

          sheetjs js-xlsx、canvas-datagrid、handsontable、DataTables

          powerpoint(pptx)

          pptxjs


          一、docx文件實現前端預覽

          1、docx-preview

          是一個 純前端的JavaScript庫,它的優點是可以后端就實現對 .docx 的文件進行在線預覽,但是缺點是 不支持.doc(劃重點)。

          github地址:https://github.com/VolodymyrBaydalka/docxjs

          demo示例

          安裝:

          npm install docx-preview -S
          

          使用效果:

          2、Mammoth

          ??Mammoth 原理是將 .docx 文檔并將其轉換為 HTML。 注意Mammoth 轉換過程中復雜樣式被忽,居中、首行縮進等,此外同樣也只能轉換.docx文檔。

          github地址:https://github.com/mwilliamson/mammoth.js

          安裝:

          npm install mammoth
          

          二、PDF文件實現前端預覽

          1、pdf.js

          pdf.js是一款非常優秀的pdf解析工具,其實火狐瀏覽器內核自帶pdf預覽解析器就是pdf.js這個解析器,我們用火狐瀏覽器打開pdf文件并按F12打開控制臺可以看到源碼內容。

          官網地址:http://mozilla.github.io/pdf.js

          github地址:https://github.com/mozilla/pdf.js

          demo示例

          使用效果:

          2、pdfobject.js

          PDFObject.js - 將PDF嵌入到一個div內,而不是占據整個頁面,要求瀏覽器支持顯示PDF(主流瀏覽器都支持),如果瀏覽器不支持,也可通過配置PDF.js來實現

          官網地址: https://pdfobject.com/

          github地址:https://github.com/pipwerks/PDFObject

          實現效果:

          3、vue-pdf

          Vue-pdf是通過Vue下基礎基于 pdf.js 組件實現PDF文件的展示,操作和生成的組件。

          github地址:https://github.com/FranckFreiburger/vue-pdf

          demo示例

          安裝:

          npm install --save vue-pdf
          

          實現效果:

          4、iframe / object/ embed

          iframe / object / embed 使用方法和效果都同理,即將 pdf 作為插件內嵌在這三個HTML標簽內,以下用 iframe 為例,效果就如同直接用鏈接打開 pdf 文件是一樣的,相當于一個新的頁面內嵌在當前頁面中。

          <iframe style="width: 100%; height: 100%;" src="/static/xxx.pdf"></iframe>
          

          實現效果:

          三、Excel文件實現前端預覽

          1、sheetjs js-xlsx

          js-xlsx是sheetJS出品的讀取和導出各種ecxel的工具庫,功能十分強大。

          xlsx官方文檔:https://www.npmjs.com/package/xlsx

          github倉庫: https://github.com/SheetJS/sheetjs

          安裝:

          npm install xlsx
          

          js-xlsx可以用二進制流方式讀取得到整份excel表格對象

          let workbook=XLSX.read(data, { type: "array" });   //表格對象
          let sheetNames=workbook.SheetNames;  //獲取到所有表格
          let worksheet=workbook.Sheets[sheetNames[0]];  //取第一張表
          

          獲取表格數據后再調用js-xlsx提供的方法,直接將表格數據轉換為html代碼,再將html代碼渲染到指定容器就完成了

          let html=XLSX.utils.sheet_to_html(worksheet);
          

          實現效果:

          2、canvas-datagrid

          ? 基于 canvas 來渲染表格,支持表格過濾、數據編輯、自定義操作菜單、大數據場景優化、主題樣式修改

          github地址:https://github.com/TonyGermaneri/canvas-datagrid

          demo示例

          安裝:

          npm install canvas-datagrid
          

          3、 handsontable

          handsontable基于 DOM 元素來渲染表格,功能強大,canvas-datagrid` 支持的功能它都支持,并且主題樣式擴展更方便

          官網地址:https://handsontable.com/docs/7.1.0/tutorial-custom-build.html

          github地址:https://github.com/handsontable/handsontable

          文檔地址:https://handsontable.com/docs/javascript-data-grid

          安裝:

          npm install handsontable @handsontable/vue
          

          Demo示例

          實現效果:

          4、DataTables

          基于Jquery 表格插件DataTables的一個表格插件,還在用Jquery 可以以考慮這個

          官網地址:https://www.datatables.net

          安裝:

          官網下載地址,在你的項目中使用 DataTables,只需要引入三個個文件即可,jQuery庫,一個DataTables的核心js文件和一個DataTables的css文件。有的時候還需要DataTables樣式的一些資源。

          <link href="DataTables/datatables.min.css" rel="stylesheet"/>
          <script src="DataTables/datatables.min.js"></script>
          

          使用方式:

          $('#example').DataTable( {
              data: data
          } );
          

          四、pptx文件實現前端預覽

          ### 1、PPTXJS PPTXJS是jquery的一個插件,她的主要功能是實現pptx轉html,用于在線進行展示

          官網地址:https://pptx.js.org/index.html

          github地址:https://github.com/meshesha/PPTXjs

          PPTXjs | Demos

          使用示例:

          <div id="slide-resolte-contaniner" ></div> 
          <script> 
            $("#slide-resolte-contaniner").pptxToHtml({ 
              pptxFileUrl: "Sample_demo1.pptx", 
              slidesScale: "50%", 
              slideMode: false, 
              keyBoardShortCut: false 
            }); 
          </script>
          

          實現效果:

          總結

          本文主要介紹了word、excel、pdf、ppt等文件純前端實現在線預覽的方式,具體實現可以是:

          ### 1、前端根據不同文件類型使用對應的在線預覽組件進行在線預覽。 前端通過判斷不同文件類型的使用對應的在線預覽組件進行在線預覽。 因為不同類型的在線預覽組件不一樣在使用時預覽界面會存在差異,如果需要做的完善一點 最好是把所有用到的組件都統一封裝的一個在線預覽的UI界面中。

          2、后端配合將不同格式的文件轉換成pdf,轉成統一的文件格式,再由前端實現預覽效果

          從本文的測試情況來看前端實現預覽最好的效果還是PDF,不會出現一些文字錯亂和亂碼的問題,這樣能保留文件的一些樣式的效果,同時前端也只用支持一種文件格式的預覽,工作量也能大大降低。

          以上就是使用js前端實現word、excel、pdf、ppt等文件在線預覽的方式的全部內容,感謝大家的閱讀!

          了解同學們的專業學習情況,增強團隊協作能力,近日,金盾2201班舉行了以小組為單位的HTML網頁項目驗收。本次項目驗收特邀鄧旎、唐勇兩位老師擔任評委。

          金盾特訓班作為我校以高薪就業為終極目標的特色班級,除了日常文化課學習之外,提升項目實戰經驗也成為了他們必不可少的日常操練項。

          驗收現場

          各小組以PPT講解結合網頁作品演示的形式,從想法構思、選定項目、作品功能實現等方面來展示團隊作品。每位同學輪流上臺講解,在操作演示中突顯實踐的重要性。

          項目驗收考驗的是大家代碼知識的運用情況,同時還能提高表達能力及項目制作水平,為成為一名“準職業人”打好基礎。大家紛紛表示,雖然在過程中遇到了數不清的困難,但是并沒有因此而放棄,在老師的輔導和組員之間的互幫互助下,促使此次項目圓滿完成。

          頒獎典禮

          經評委現場評分,最終評選出團隊一、二、三等獎及優秀個人獎。

          團隊一等獎

          王涵、李嘉星、劉燦、段李可

          團隊二等獎

          姚宏源、周旺、駱鵬飛、凌海峰

          團隊三等獎

          潘虹、張雅婷、胡偉

          優秀個人獎

          羅浩智、付清、陳韜、殷明、莫藝清


          此次項目驗收,充分展示了金盾班同學的理論水平、專業知識、語言表達與實踐操作能力,希望各位同學再接再厲,發揮個人潛能,展示出更加優秀的作品。


          將畢業的應屆生,為畢業答辯做準備,還在熬夜做PPT?

          領導通知交工作匯報PPT,找不到PPT模板,怎么辦?

          給學生上網課,準備的PPT課件太丑了

          ......

          相信這些場景,大部分人都遇到過。急需模板,卻不知道在哪找?

          所以,這篇文章,給大家分享一個非常好用的模板網站。



          PPT超級商店

          http://ppt.sotary.com/web/wxapp/index.html

          不同于其他的PPT模板網站,這個網站簡潔無套路,沒有其他復雜的資源,里面都是一些優質PPT模板,下載也很方便。



          使用方法:

          點擊自己挑選的PPT模板,進入頁面展示頁,會看到每一頁的模板的設計。滑到結尾,就會看到有一個下載的指示圖標,直接點擊就可以了下載了,免費,但是不可商用。

          同樣,可以通過搜索關鍵詞,快速獲取你所需要的PPT模板。


          值得推薦的4個理由:


          1、模板不定時更新,涵蓋各種類型,適用于各種使用場景

          包括答辯PPT、工作匯報PPT、商業計劃書、述職報告等等

          2、PPT質量高

          我下載了一份黑色商務風的PPT模板,頁面簡約,但也非常炫酷,挑幾頁給大家展示一下:





          是不是很不錯呢?

          3、免費下載無套路

          網站里提供的所有資源都可以免費下載,沒有免費付費之分,不用糾結,挑選了一套合適的模板,但卻需要付錢的尷尬。

          網站缺點

          1、 PPT模板資源有限,只有PPT模板,類型單一

          只提供PPT模板,沒有其他素材和工具

          2、設計風格都比較簡約

          3、不可商用

          以上,經常需要PPT模板的朋友,一定要收藏這個網站呀~


          福利:

          關注@PPT進化論 ,私信回復關鍵詞【30 套】,即可獲取我收藏的優質職場類PPT模板資源了!


          主站蜘蛛池模板: 日本一区二区不卡视频| 又紧又大又爽精品一区二区| 午夜性色一区二区三区免费不卡视频| 亚洲AV福利天堂一区二区三| 福利视频一区二区牛牛 | 精品国产一区二区三区久| 一区高清大胆人体| 精品无码人妻一区二区免费蜜桃 | 无码人妻精品一区二| 精品一区精品二区| 日韩AV在线不卡一区二区三区| 麻豆一区二区三区蜜桃免费| 国产亚洲福利精品一区二区| 琪琪see色原网一区二区| 无码人妻一区二区三区免费视频| 日韩精品一区二区三区中文字幕| 白丝爆浆18禁一区二区三区| 色综合视频一区二区三区| 乱中年女人伦av一区二区| 精品国产一区二区22| 日本一区二区不卡视频| 亚洲一区电影在线观看| 日韩一区二区三区射精| 在线视频精品一区| 国产精品亚洲高清一区二区 | 国产一国产一区秋霞在线观看| 一区二区在线视频观看| 中文字幕无码一区二区免费| 日韩精品乱码AV一区二区| 国产精品视频免费一区二区| 精品女同一区二区| 久久精品国产一区| 日本高清一区二区三区| 国产精品无码一区二区在线观一 | 夜夜高潮夜夜爽夜夜爱爱一区| 无码人妻AⅤ一区二区三区水密桃 无码欧精品亚洲日韩一区夜夜嗨 无码毛片一区二区三区中文字幕 无码毛片一区二区三区视频免费播放 | 无码毛片一区二区三区中文字幕 | 国产精品一区在线观看你懂的| 免费视频精品一区二区三区| 91精品一区二区三区在线观看| 日韩成人一区ftp在线播放|