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

【vue2中的pdf預(yù)覽】iframe/pdf.js/vue-pdf

這篇具有很好參考價(jià)值的文章主要介紹了【vue2中的pdf預(yù)覽】iframe/pdf.js/vue-pdf。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

前言

vue2中預(yù)覽pdf的方法有pdf.js和vue-pdf等。下面進(jìn)行簡(jiǎn)單對(duì)比&使用方法的介紹。

正文

直接使用iframe預(yù)覽pdf

使用iframe預(yù)覽pdf
如果后端返回的不是url,那么需要使用responseType = 'blob'來讀取后端傳來的內(nèi)容。

擴(kuò)展:

  • 同樣是使用iframe進(jìn)行預(yù)覽,如果有其他格式如word/xls/ppt/txt的文件需要預(yù)覽,可以使用微軟解析地址的url進(jìn)行預(yù)覽。
    注意:文件地址是公網(wǎng)可打開的;控制的只是src地址
    微軟解析地址:https://view.officeapps.live.com/op/view.aspx?src=你的文件地址
    參考:vue預(yù)覽 pdf、word、xls、ppt、txt文件方法
  • 常見問題的解決
    參考:PDF預(yù)覽完整解決方案及各種兼容(VUE版)
    • 緩存問題:利用iframe打開pdf后,當(dāng)再次利用iframe打開另一個(gè)pdf時(shí)會(huì)顯示第一份pdf,原因是瀏覽器對(duì)url的緩存處理。
      解決辦法:給url加時(shí)間戳或隨機(jī)數(shù),這樣就沒有緩存問題了。
      const fresh=new Date().getTime();//時(shí)間戳 this.url = this.url+'?'+ fresh; // 初始化查看pdf應(yīng)用地址
    • 使用base64url問題:有些pdf的url采用base64格式,直接將base64格式url放進(jìn)src中可能會(huì)報(bào)錯(cuò)導(dǎo)致顯示不了。原因是base64地址太長(zhǎng),瀏覽器不支持。
      **解決辦法:**利用Blob轉(zhuǎn)base64url成文件路徑.
      css復(fù)制代碼 var bstr = window.atob(_this.baseUrl); //解碼 var n = bstr.length; var u8arr = new Uint8Array(n);

使用pdf.js+iframe預(yù)覽

相比起直接使用iframe預(yù)覽,功能更加強(qiáng)大,支持更多自定義的功能。
比如:

  1. 自定義樣式:使用 PDF.js,你可以更靈活地自定義 PDF 文件的樣式。你可以修改文字的顏色、字體大小、行間距等,以滿足特定的需求。
  2. 高級(jí)功能:PDF.js 提供了許多高級(jí)功能,例如縮放、旋轉(zhuǎn)、搜索、導(dǎo)航目錄等。這些功能在直接使用 iframe 時(shí)不可用。
  3. 高級(jí)操作:使用 PDF.js,你可以實(shí)現(xiàn)更高級(jí)的操作,如添加注釋、書簽、水印等。這些操作在直接使用 iframe 時(shí)無法實(shí)現(xiàn)。
  4. 兼容性:PDF.js 可以在大多數(shù)現(xiàn)代瀏覽器中正常工作,因此可以提供更好的兼容性,以確保用戶可以在各種設(shè)備和瀏覽器上正確顯示和操作 PDF 文件。
  5. 定制性:PDF.js 是一個(gè)開源項(xiàng)目,可以根據(jù)項(xiàng)目需求進(jìn)行二次開發(fā)和定制。你可以根據(jù)具體需求修改源代碼,以滿足特定的業(yè)務(wù)需求。
    詳細(xì)|vue中使用PDF.js預(yù)覽文件實(shí)踐包括如何注釋代碼以解決跨域問題。

PDF.js使用總結(jié)包括一些api列舉。

擴(kuò)展

vue項(xiàng)目,npm install方式使用pdfjs 這里不是使用iframe的,而是直接渲染內(nèi)容,手動(dòng)寫翻頁的按鈕或其他功能。有完整代碼。
pdfjs-dist web預(yù)覽pdf文件, pdfjs-dist example 也是使用npm方式使用pdf.js的。包括對(duì)比vue-pdf的優(yōu)劣,和vue.config.js的配置,有完整代碼。

npm install方式使用pdf.js: 需根據(jù)需求自己寫樣式,實(shí)現(xiàn)相關(guān)功能。

以靜態(tài)資源方式使用(就是本文章前面的用法): 將pdf下載到本地項(xiàng)目中,以靜態(tài)資源方式使用,通過 pdf.js 提供的 viewer.html
文件來展示服務(wù)器上的pdf文件,無須自己設(shè)置樣式(已有pdf.js的全套樣式和相關(guān)功能,不需要的地方可通過更改源碼等方式自行去掉)

vue-pdf

vue-pdf是基于pdfjs-dist插件的vue封裝。
PDF預(yù)覽完整解決方案及各種兼容(VUE版)可以參考的簡(jiǎn)略版的使用方法和常見問題解決。

vue-pdf 一個(gè)基于vue的pdf預(yù)覽插件(vue2.x)這個(gè)封裝了一個(gè)有分頁顯示功能的完整代碼,可以參考,整體使用的邏輯比較清晰。

擴(kuò)展

vue實(shí)戰(zhàn)–vue+elementUI實(shí)現(xiàn)多文件上傳+預(yù)覽(word/PDF/圖片/docx/doc/xlxs/txt) ;可以參考的封裝思路和功能,有完整代碼和圖示。預(yù)覽還是用的https://view.officeapps.live.com/op/view.aspx?src=${data}文章來源地址http://www.zghlxwxcb.cn/news/detail-700104.html

到了這里,關(guān)于【vue2中的pdf預(yù)覽】iframe/pdf.js/vue-pdf的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 前端使用vue-pdf、pdf-lib、canvas 給PDF文件添加水印,并預(yù)覽與下載

    前端使用vue-pdf、pdf-lib、canvas 給PDF文件添加水印,并預(yù)覽與下載

    原理就是給顯示pdf 的容器增加一層水印遮罩層 下載: 通過url獲取pdf文件的arrarybuffer文件流 將arraybuffer數(shù)據(jù)轉(zhuǎn)成pdf文檔 添加水印字體(內(nèi)置/自定義) 為每頁pdf添加文字水印 保存pdf文件的unit64Arrary文件流 預(yù)覽: 創(chuàng)建canvas容器(用于顯示水印文字) 創(chuàng)建水印canvas 將水印canv

    2024年01月24日
    瀏覽(25)
  • vue-pdf多頁預(yù)覽異常,Rendering cancelled, page 1 Error at BaseExceptionClosure xxx

    vue-pdf多頁預(yù)覽異常,Rendering cancelled, page 1 Error at BaseExceptionClosure xxx

    項(xiàng)目開發(fā)使用vue-pdf,單頁情況預(yù)覽正常,多頁vue-pdf預(yù)覽異常,第一次預(yù)覽時(shí),會(huì)先彈出異常模態(tài)窗口,關(guān)閉模態(tài)窗口,pdf又是正常顯示,報(bào)錯(cuò)信息及異常截圖如下: 異常截圖,點(diǎn)擊右上角關(guān)閉X,pdf是正常預(yù)覽,再次打開后也能正常預(yù)覽,僅第一次打開預(yù)覽有異常。 1.vue-pdf預(yù)

    2024年02月07日
    瀏覽(23)
  • vue前端預(yù)覽pdf并加水印、ofd文件,控制打印、下載、另存,vue-pdf的使用方法以及在開發(fā)中所踩過的坑合集

    vue前端預(yù)覽pdf并加水印、ofd文件,控制打印、下載、另存,vue-pdf的使用方法以及在開發(fā)中所踩過的坑合集

    根據(jù)公司的實(shí)際項(xiàng)目需求,要求實(shí)現(xiàn)對(duì)pdf和ofd文件的預(yù)覽,并且需要限制用戶是否可以下載、打印、另存pdf、ofd文件,如果該用戶可以打印、下載需要控制每個(gè)用戶的下載次數(shù)以及可打印的次數(shù)。正常的預(yù)覽pdf很簡(jiǎn)單,直接調(diào)用瀏覽器的預(yù)覽就可以而且功能也比較全,但是一

    2024年02月16日
    瀏覽(93)
  • vue3 實(shí)現(xiàn)預(yù)覽pdf的幾種方式(vue3-pdf, iframe流展示,vue-office/pdf)

    功能描述: 要實(shí)現(xiàn)菜單(二級(jí))綁定文件,并進(jìn)行預(yù)覽(點(diǎn)擊菜單即觸發(fā)),支持文件上傳下載(綁定菜單),文件以byte[]形式保存到數(shù)據(jù)庫(至于為什么不用文件存儲(chǔ)系統(tǒng),因?yàn)檫@是領(lǐng)導(dǎo)定的 =,= 而且這個(gè)功能比較小,數(shù)據(jù)也不多,成本有限),同時(shí),要解析pdf文件里的內(nèi)

    2024年02月16日
    瀏覽(19)
  • 【Vue】vue2使用pdfjs預(yù)覽pdf文件,在線預(yù)覽方式一,pdfjs文件包打開新窗口預(yù)覽pdf文件

    【Vue】vue2使用pdfjs預(yù)覽pdf文件,在線預(yù)覽方式一,pdfjs文件包打開新窗口預(yù)覽pdf文件

    【Vue】vue2預(yù)覽顯示quill富文本內(nèi)容,vue-quill-editor回顯頁面,v-html回顯富文本內(nèi)容 【Vue】vue2項(xiàng)目使用swiper輪播圖2023年8月21日實(shí)戰(zhàn)保姆級(jí)教程 【Vue】vue2使用pdfjs預(yù)覽pdf文件,在線預(yù)覽方式一,pdfjs文件包打開新窗口預(yù)覽pdf文件 提示:這里可以添加本文要記錄的大概內(nèi)容: vue

    2024年02月07日
    瀏覽(26)
  • vue2實(shí)現(xiàn)二進(jìn)制流pdf瀏覽器預(yù)覽功能

    該方法不需要使用插件? 獲取后端二進(jìn)制文件流后直接處理 然后點(diǎn)擊調(diào)用方法使用

    2024年01月20日
    瀏覽(25)
  • vue2 pdfjs-2.8.335-dist pdf文件在線預(yù)覽功能

    vue2 pdfjs-2.8.335-dist pdf文件在線預(yù)覽功能

    1、首先先將 pdfjs-2.8.335-dist 文件夾從網(wǎng)上搜索下載,復(fù)制到public文件夾下. 2、在components下新建組件PdfViewer.vue文件 3、在el-upload 中調(diào)用 pdf-viewer 組件 4、在el-upload 中的 on-preview方法中加上對(duì)應(yīng)的src路徑 ?internalPreview(file) { //判斷需要預(yù)覽的地方加 props—pdfView ? ? ? ? ? ? ? ?

    2024年01月19日
    瀏覽(31)
  • 【vue2】純前端實(shí)現(xiàn)本地的pdf/word/epub文件預(yù)覽

    需求是預(yù)覽本地的pdf/word/epub格式的文件,但是搜索后發(fā)現(xiàn)沒有可以直接使用的,格式不同,顯示的方式和效果也都略有不同。 最后還是 分別實(shí)現(xiàn)預(yù)覽 的功能。 如果只需要預(yù)覽pdf/word等格式的話,可以使用的方案:vue-office,支持多種文件(docx、excel、pdf)預(yù)覽的vue組件庫,支持

    2024年02月11日
    瀏覽(38)
  • Vue中 引入使用 patch-package 為依賴打補(bǔ)丁 (以修改 vue-pdf 打包后 [hash].worker.js 路徑問題為例)

    Vue中 引入使用 patch-package 為依賴打補(bǔ)丁 (以修改 vue-pdf 打包后 [hash].worker.js 路徑問題為例)

    1. patch-package 簡(jiǎn)介 patch-package npm地址 patch-package github文檔 如果不需要在生產(chǎn)中運(yùn)行 npm (如:正在制作 web 前端,則可使用 --save dev) 1.2 使用方法 制作修補(bǔ)程序 首先更改 node_modules 文件夾中特定包的文件,然后運(yùn)行 或使用 npx (npm 5.2) package-name 與所更改的程序包的名稱相匹配

    2024年02月10日
    瀏覽(18)
  • 使用iframe預(yù)覽pdf

    使用iframe預(yù)覽pdf

    本文主要介紹使用iframe預(yù)覽pdf的功能,以及iframe預(yù)覽報(bào)錯(cuò)問題和iframe未能加載PDF文檔。 預(yù)覽自帶分頁、下載、旋轉(zhuǎn)、比例等功能。 一、iframe是什么? iframe的介紹:將src的內(nèi)容規(guī)定在 中顯示出。 iframe既可以用來預(yù)覽本地static下的文檔,也可以預(yù)覽后端返回的文件流文檔 二、

    2024年02月11日
    瀏覽(21)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包