国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

使用pdf.js展示pdf文件(親測可用)

這篇具有很好參考價(jià)值的文章主要介紹了使用pdf.js展示pdf文件(親測可用)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

簡單的實(shí)現(xiàn)方式

如果只是電腦端,可通過 iframe 標(biāo)簽嵌套預(yù)覽

ios手機(jī)端可通過 a 標(biāo)簽包裹點(diǎn)擊跳轉(zhuǎn)預(yù)覽(安卓端不行)

安卓電腦ios的通用方法

資料

老版本github地址

全版本地址

獲取當(dāng)前客戶端類型

	judgeClient() {
      let client = ''
      if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) { // 判斷iPhone|iPad|iPod|iOS
        client = 'iOS'
      } else if (/(Android)/i.test(navigator.userAgent)) { // 判斷Android
        client = 'Android'
      } else {
        client = 'PC'
      }
      return client
    }

正式開始

下載及安裝pdf.js插件

前往官方地址下載插件包 http://mozilla.github.io/pdf.js/
此鏈接可下載最新版本,不兼容老版本瀏覽器和蘋果系統(tǒng),若需在蘋果展示則使用最上面老版本系統(tǒng),或者下載右邊的舊版瀏覽器版本(沒有嘗試過
使用pdf.js展示pdf文件(親測可用)

引入項(xiàng)目

在public文件夾下新建pdfjs文件夾,將解壓后的文件放進(jìn)去

解壓后的
使用pdf.js展示pdf文件(親測可用)
放到項(xiàng)目中
使用pdf.js展示pdf文件(親測可用)

使用

第一種方法(文件鏈接或者靜態(tài)文件)

  1. 解決跨域問題

先解決pdfjs自帶的跨域攔截:
新版本
找到/web/viewer.js,搜索 fileOrigin,并注釋以下代碼段
使用pdf.js展示pdf文件(親測可用)
老版本
找到/web/viewer.js,搜索 if (origin !== viewerOrigin && protocol !== “blob:”) {,并注釋以下代碼段
使用pdf.js展示pdf文件(親測可用)

  1. 使用iframe嵌入即可
file后攜帶需要展示的pdf鏈接

<iframe src="pdfjs/web/viewer.html?file=http://xxxx/file/xxxx.pdf" width="500" height="500"></iframe>

注意:
要展示的pdf必須和psf.js文件在同一個(gè)域名或者ip下

第二種方法

1、先創(chuàng)建個(gè)iframe標(biāo)簽,給定一個(gè)id
使用pdf.js展示pdf文件(親測可用)
2、從后端獲取blob形式的pdf文件,具體怎么獲取和后端商定(思路,后端提供一個(gè)接口,參數(shù)為文件鏈接,前端帶參文件鏈接請求接口后,接口返回此文件鏈接的blob形式的文件流。)
使用pdf.js展示pdf文件(親測可用)
3、獲取到blob形式的pdf文件后,添加到iframe中,完成
使用pdf.js展示pdf文件(親測可用)

解決mac OS 的safari瀏覽器不兼容的問題

方法一

直接使用老版本,我測試使用老版本對(duì)項(xiàng)目暫無任何影響

方法二(使用老版本的pdfjs即可,這個(gè)方法概率性出現(xiàn)pdf按鈕不顯示的問題)

老版本和新版本同時(shí)引入,當(dāng)請求頁面是判斷當(dāng)前客戶端類型,若是ios則使用老版本的pdf.js文件

使用pdf.js展示pdf文件(親測可用)

最笨的代碼示例

client是文章開頭的方法獲取的客戶端類型

	<iframe
          v-if="item.url && item.url.split('.').pop().toLowerCase() === 'pdf' && client !== 'iOS'"
          :src="'pdfjs/new/web/viewer.html?file=' + item.url"
          allow="fullscreen"
          align="center"
          name="ifd"
          width="100%"
          scrolling="no"
          frameborder="0"
          type="application/pdf"
          height="700"/>
        <iframe
          v-else-if="item.url && item.url.split('.').pop().toLowerCase() === 'pdf' && client === 'iOS'"
          :src="'pdfjs/old/web/viewer.html?file=' + item.url"
          allow="fullscreen"
          align="center"
          name="ifd"
          width="100%"
          scrolling="no"
          frameborder="0"
          type="application/pdf"
          height="700"/>

參考文章

https://www.cnblogs.com/huihuihero/p/16892882.html文章來源地址http://www.zghlxwxcb.cn/news/detail-501109.html

到了這里,關(guān)于使用pdf.js展示pdf文件(親測可用)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • vue3項(xiàng)目使用pdf.js插件實(shí)現(xiàn):搜索高亮、修改pdf.js顯示的頁碼、向pdf.js傳值、控制搜索、處理接口文件流

    vue3項(xiàng)目使用pdf.js插件實(shí)現(xiàn):搜索高亮、修改pdf.js顯示的頁碼、向pdf.js傳值、控制搜索、處理接口文件流

    官網(wǎng)地址:http://mozilla.github.io/pdf.js/ 中文文檔地址:https://gitcode.gitcode.host/docs-cn/pdf.js-docs-cn/print.html PDF.js是基于HTML5技術(shù)構(gòu)建的,用于展示可移植文檔格式的文件(PDF),它可以在現(xiàn)代瀏覽器中使用且無需安裝任何第三方插件。 pdf.js主要包含兩個(gè)庫文件 pdf.js:負(fù)責(zé)API解析 pdf.wor

    2024年02月13日
    瀏覽(29)
  • PDF.js實(shí)現(xiàn)按需分片加載pdf文件

    PDF.js實(shí)現(xiàn)按需分片加載pdf文件

    1.服務(wù)端配置 分片加載的實(shí)現(xiàn)是基于 HTTP-RANGE,即服務(wù)端的文件接口必須實(shí)現(xiàn)了HTTP-RANGE。 服務(wù)端文件接口實(shí)現(xiàn)HTTP-RANGE,需要服務(wù)端添加如下響應(yīng)頭 2.下載 releases 包 在 mozilla/pdf.js 的github倉庫下載最新的 Releases 包 https://github.com/mozilla/pdf.js/releases 這里以 Vue 為例,其他前端框架

    2024年01月17日
    瀏覽(70)
  • Linux服務(wù)器(centos7)中Word轉(zhuǎn)換PDF,文檔出現(xiàn)中文亂碼或方格【親測可用,已解決】

    Linux服務(wù)器(centos7)中Word轉(zhuǎn)換PDF,文檔出現(xiàn)中文亂碼或方格【親測可用,已解決】

    提示:在centos服務(wù)器使用aspose.word轉(zhuǎn)換word文件為pdf的時(shí)候只有中文亂碼或則方格,但是在win服務(wù)器上使用可以正常轉(zhuǎn)換。本次文章主要解決字體缺失問題 提示:word轉(zhuǎn)換pdf在服務(wù)器上出現(xiàn)中文亂碼或者方格狀態(tài)(主要問題是字體缺失)。 在centos服務(wù)器使用aspose.word轉(zhuǎn)換word文件

    2024年02月08日
    瀏覽(96)
  • js實(shí)現(xiàn)PDF 預(yù)覽和文件下載

    js實(shí)現(xiàn)PDF 預(yù)覽和文件下載

    在開發(fā)過程中要求對(duì) PDF 類型的發(fā)票提供 預(yù)覽 和 下載 功能, PDF 類型文件的來源又包括 H5 移動(dòng)端 和 PC 端 ,而針對(duì)這兩個(gè)不同端的處理會(huì)有些許不同,下文會(huì)有所提及。 針對(duì) PDF 預(yù)覽 的文章不在少數(shù),但似乎都沒有提及可能遇到的問題,或是提供對(duì)應(yīng)的具體需求場景下如何

    2024年02月15日
    瀏覽(28)
  • 使用pdf.js預(yù)覽pdf文件時(shí)如何兼容chrome66版本

    最近在做一個(gè)需求,在PC端實(shí)現(xiàn)預(yù)覽pdf文件的功能,但是要最低兼容chrome的66版本,因?yàn)楣居玫腸hrome瀏覽器最低版本就是66版本。 現(xiàn)在下載PDF.js (鏈接:https://mozilla.github.io/pdf.js/) 下載下來的版本是 v3.11.174 ,都是已經(jīng)構(gòu)建好的。 我先拿 v3.11.174 這個(gè)版本試了一下,發(fā)現(xiàn)在

    2024年02月07日
    瀏覽(27)
  • 微信小程序 連接云數(shù)據(jù)庫(不使用云函數(shù))進(jìn)行 登錄、注冊、查詢(包括模糊查詢)快速實(shí)現(xiàn) 親測可用

    微信小程序 連接云數(shù)據(jù)庫(不使用云函數(shù))進(jìn)行 登錄、注冊、查詢(包括模糊查詢)快速實(shí)現(xiàn) 親測可用

    當(dāng)連接MySQL的時(shí)候總是出現(xiàn)各種各樣的小問題,可以選用微信小程序自帶的云數(shù)據(jù)庫 注:測試號(hào)不能建立云數(shù)據(jù)庫 按圖中步驟來 第4步中,有兩種添加方式 第一種 第二種 注意: 如果你是粘貼復(fù)制的,他會(huì)報(bào)錯(cuò) 非數(shù)字字符\\\"無法使用外部字符串表示法位于第1行 。這時(shí),在第

    2023年04月20日
    瀏覽(26)
  • vue3 實(shí)現(xiàn)簡單計(jì)數(shù)器示例——一個(gè)html文件展示vue3的效果

    vue3 實(shí)現(xiàn)簡單計(jì)數(shù)器示例——一個(gè)html文件展示vue3的效果

    目的 :作為一個(gè)新手開發(fā),我想使用 Vue 3 將代碼封裝在 HTML 文件中時(shí),進(jìn)行界面打開展示。 學(xué)了一個(gè)簡單計(jì)數(shù)器界面展示,代碼如下: 在 上述HTML 文件里,包含了文件頭標(biāo)題 title , 接著定義了一個(gè)內(nèi)容 div id=\\\"app\\\" 而后定義了一個(gè)內(nèi)容,包含標(biāo)題和數(shù)字,以及兩個(gè)按鈕的 templa

    2024年01月18日
    瀏覽(28)
  • uniapp獲取 pdf文件流 并展示

    1、流數(shù)據(jù) uni.request({ url: this.$config.apiUrl+“/api/report/content/fill?code=bv.mf.refund.pay.voucherbusiNo=00201323051500148949”, header: { ‘content-type’: ‘a(chǎn)pplication/json;charset=utf-8’, ‘X-App-Code’: ‘weixin’, ‘X-Source’: ‘program’, ‘X-Token’: store.getters.token }, responseType:‘a(chǎn)rraybuffer’, success: (data) =

    2024年02月11日
    瀏覽(13)
  • ARIMA實(shí)現(xiàn)(親測可用)

    需要jar包Jama-1.0.2.jar,數(shù)據(jù):時(shí)序數(shù)據(jù)的值 下載連接 https://download.csdn.net/download/dongyang1124/86265504

    2024年02月16日
    瀏覽(15)
  • 利用Pycharm將python程序打包為exe文件(親測可用)

    利用Pycharm將python程序打包為exe文件(親測可用)

    ????????最近做了一個(gè)關(guān)于py的小項(xiàng)目,對(duì)利用Pycharm將python文件打包為exe文件不是很熟悉,故學(xué)習(xí)記錄之。 目錄 一、下載pyinstaller庫 二、打開Pycharm進(jìn)行打包(不更改圖標(biāo)) 三、打開Pycharm進(jìn)行打包(更改圖標(biāo)) ? 1. 點(diǎn)擊win+r,輸入cmd打開控制管理器 2. 輸入pip install pyins

    2024年02月08日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包