熱門文章

      最新文章

      HTML下直接瀏覽pdf文檔,pdf.js無需插件即可實(shí)現(xiàn)

      發(fā)布時(shí)間:2021-06-22 15:26:45

      近期,有一個(gè)朋友做B端,服務(wù)器存了大量的金融類數(shù)據(jù),很多都是pdf文檔,他現(xiàn)在的做法是,先將pdf文檔轉(zhuǎn)換成flash,再放到瀏覽器上給用戶瀏覽,但是他告訴我,這種體驗(yàn)太差了,而且很好資源,空間已經(jīng)快不夠了,向我咨詢有沒有可以直接讀取pdf文檔的,我之前也沒做過,于是,我簡單搜索了一下,還真是有,下面給大家整理出來,供大家參考。

      pdf.js是一款開源的pdf文檔讀取解析插件,據(jù)說在HTML5下誕生的,對(duì)于主流的瀏覽器基本都支持。

      官網(wǎng)GitHub地址如下:https://github.com/mozilla/pdf.js

       

      pdf.js主要包含兩個(gè)庫文件,一個(gè)pdf.js和一個(gè)pdf.worker.js,,一個(gè)負(fù)責(zé)API解析,一個(gè)負(fù)責(zé)核心解析

      比如Demo1,點(diǎn)擊連接,可在當(dāng)前頁面打開一個(gè)pdf文檔,進(jìn)行預(yù)覽,代碼剖析

      1.引入pdf.js

      2.解析讀取pdf

      function showPdf(){
      
      PDFJS.workerSrc = '../build/pdf.worker.js';//加載核心庫
      PDFJS.getDocument(url).then(function getPdfHelloWorld(pdf) {
      //
      // 獲取第一頁數(shù)據(jù)
      //
      pdf.getPage(1).then(function getPageHelloWorld(page) {
      var scale = 1.5;
      var viewport = page.getViewport(scale);
      
      //
      // Prepare canvas using PDF page dimensions
      //
      var canvas = document.getElementById('the-canvas');
      var context = canvas.getContext('2d');
      canvas.height = viewport.height;
      canvas.width = viewport.width;
      
      //
      // Render PDF page into canvas context
      //
      var renderContext = {
      canvasContext: context,
      viewport: viewport
      };
      page.render(renderContext);
      });
      });
      
      }

      3.設(shè)置HTML標(biāo)簽

      <a href="javascript:void(0)" target="_blank" onclick="showPdf()">顯示pdf文檔</a>
      <canvas id="the-canvas"></canvas>

      4.demo1是通過調(diào)用API自己解析,通常,我們直接使用官網(wǎng)的Demo,比如viewer.html,或者Demo2,官方已經(jīng)為我們?cè)O(shè)置好了預(yù)覽的皮膚和各種事件,因此,我只需要將官方的庫引進(jìn)去,會(huì)進(jìn)行本地預(yù)覽即可。


      返回頂部
      主站蜘蛛池模板: 亚洲一区二区三区香蕉| 国产精品视频一区二区三区无码| 无码毛片视频一区二区本码 | 一区二区在线播放视频| 亚洲一区二区免费视频| 国产精品毛片一区二区| 无码人妻啪啪一区二区| 在线精品亚洲一区二区| 国产福利微拍精品一区二区| 国产AV一区二区三区无码野战| 亚洲一区二区三区免费| 一区二区三区在线播放视频| 日本精品一区二区三区在线视频一| 伦精品一区二区三区视频| 91精品一区二区| 亚洲日韩AV无码一区二区三区人| 中文字幕视频一区| 亚洲AV无码一区二区三区牛牛| 2018高清国产一区二区三区 | 亚洲一区二区精品视频| 中文无码一区二区不卡αv| 精品亚洲AV无码一区二区 | 国产一区二区在线观看麻豆| 精品无人乱码一区二区三区| 麻豆AV天堂一区二区香蕉| 狠狠综合久久av一区二区| 国产精品亚洲专区一区| 亚洲国产综合精品一区在线播放| 一区二区精品视频| 国产成人久久精品一区二区三区 | 亚洲国产精品一区二区第一页| 亚洲一区二区三区在线视频| 亲子乱av一区二区三区| 一区二区三区视频在线观看| 亚洲午夜一区二区电影院| 无码少妇一区二区三区芒果| 国产一区二区三区播放| 中文日韩字幕一区在线观看| 亚洲av无码不卡一区二区三区| 成人精品一区二区户外勾搭野战| 欧美av色香蕉一区二区蜜桃小说|