文檔在線預覽的另一種實現方式采用的技術棧是OpenOffice + pdf.js, office文檔轉換為pdf的工作依然由OpenOffice的服務來完成,pdf生成后我們不再將其轉換為其他文件而是直接將pdf文件通過js框架直接展示到web頁面,這樣相對於方案一的實現少了一層轉換,效率會更快,而且pdf.js由mozilla團隊維護,不用擔心后期維護問題,客戶端瀏覽器不需要安裝pdf閱讀器插件,唯一的要求是瀏覽器必須支持html5。這種方案的實現過程是:
- 通過OpenOffice的服務將office文檔及文本文檔轉換為pdf文檔。
- 通過pdf.js將pdf文件展示到web頁面。
流程圖:
優缺點分析:
缺點:客戶端瀏覽器必須支持html5
優點:pdf.js渲染出的頁面很類似與pdf閱讀器,支持文本搜索和字體縮放,支持分頁等,用戶體驗較好。
圖例:
Demo:
https://github.com/StoneFeng/DocOnlinePreview2.git