最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue使用pdfobject實(shí)現(xiàn)預(yù)覽pdf的示例詳解

 更新時(shí)間:2023年03月15日 15:57:58   作者:會(huì)說(shuō)法語(yǔ)的豬  
PDFObject?是一個(gè)?JavaScript?庫(kù)用來(lái)在HTML中動(dòng)態(tài)嵌入?PDF?文檔。這篇文章主要為大家詳細(xì)介紹了使用pdfobject實(shí)現(xiàn)預(yù)覽pdf的功能,需要的可以了解一下

之前寫(xiě)過(guò)一篇預(yù)覽pdf的,Vue使用vue-pdf實(shí)現(xiàn)PDF文件預(yù)覽 ,大家按需所用

一般項(xiàng)目中在上傳文件之前可能會(huì)有 先預(yù)覽一下,看是否符合要求,符合再上傳,這里先說(shuō)了pdf文件,使用pdfobject庫(kù),也很方便

安裝 

pnpm add pdfobject

引入 

import pdf from 'pdfobject'

使用 

這里使用會(huì)借助于FileReader,F(xiàn)ileReader用于讀取文件 

// 點(diǎn)擊文件上傳回調(diào)
handlePreview(file) {
  const { raw } = file
  // 預(yù)覽pdf
  // FileReader用于讀取文件
  let reader = new FileReader()
  reader.readAsDataURL(raw) // 這里只需要將文件傳進(jìn)去就可以了
  reader.onload = e => {
    // reader.result 同 e.target.result
    // 1.文件名 2.要將pdf渲染到的指定位置(dom元素) 3.指定在embed標(biāo)簽中的顯示的寬度
    pdf.embed(reader.result, '#previewPdfAndDocx', { width: '100%' })
  }
},

效果 

我這里沒(méi)在上傳之前判斷,這里是上傳之后,點(diǎn)擊文件的時(shí)候進(jìn)行預(yù)覽,也可以在上傳文件之前進(jìn)行預(yù)覽,然后決定是否進(jìn)行上傳。根據(jù)具體項(xiàng)目需求來(lái) 

補(bǔ)充

除了上文,還可以利用pdfobject實(shí)現(xiàn)其他功能,希望對(duì)大家有所幫助

效果1:在指定位置(當(dāng)指定位置為全局時(shí))瀏覽PDF

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>在指定div中瀏覽PDF</title>
        <!--在此引入bootstrap只為初始化樣式div樣式-->
        <link rel="stylesheet" href="css/bootstrap.min.css" />
        <style>
            /* 添加樣式是為了實(shí)現(xiàn)全屏效果 */
            html,body{
                height: 100%;
                overflow: hidden;
            }
             
            #example1{
                height: 100%;
            }
             
            .pdfobject-container{
                /* height: 500px; */
            }
             
            .pdfobject{
                /* border: 1px solid #666; */
            }
        </style>
    </head>
     
    <body>
        <div id="example1"></div>
             
        <script type="text/javascript" src="js/pdfobject.min.js"></script>
        <script>
            // 我的pdf文件放在項(xiàng)目的pdf文件夾下,名字叫做Java.pdf
            PDFObject.embed("pdf/Java.pdf", "#example1");
        </script>
    </body>
</html>

效果2:在指定位置(當(dāng)指定位置為局部時(shí))瀏覽PDF

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>在指定div中瀏覽PDF</title>
        <!--在此引入bootstrap只為初始化樣式div樣式-->
        <link rel="stylesheet" href="css/bootstrap.min.css" />
        <style>
            html,body{
                height: 100%;
                overflow: hidden;
                /* 添加背景顏色是為了方便查看整個(gè)body范圍 */
                background-color: cornflowerblue;
            }
             
            #example1{
                /* 設(shè)置放置PDF的div的樣式 */
                height: 50%;
                width: 50%;
            }
             
            /* PDF容器樣式 */
            .pdfobject-container{
                /* height: 500px; */
            }
             
            /* PDF樣式 */
            .pdfobject{
                /* border: 1px solid #666; */
            }
        </style>
    </head>
     
    <body>
        <div id="example1"></div>
             
        <script type="text/javascript" src="js/pdfobject.min.js"></script>
        <script>
            // 我的pdf文件放在項(xiàng)目的pdf文件夾下,名字叫做Java.pdf
            PDFObject.embed("pdf/Java.pdf", "#example1");
        </script>
    </body>
</html>

效果3:指定從多少頁(yè)開(kāi)始閱讀(必須同時(shí)指定顯示PDF的div)

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>在指定div中瀏覽PDF</title>
        <!--在此引入bootstrap只為初始化樣式div樣式-->
        <link rel="stylesheet" href="css/bootstrap.min.css" />
        <style>
            /* 添加樣式是為了實(shí)現(xiàn)全屏效果 */
            html,body{
                height: 100%;
                overflow: hidden;
            }
             
            #example1{
                height: 100%;
            }
             
            .pdfobject-container{
                /* height: 500px; */
            }
             
            .pdfobject{
                /* border: 1px solid #666; */
            }
        </style>
    </head>
     
    <body>
        <div id="example1"></div>
             
        <script type="text/javascript" src="js/pdfobject.min.js"></script>
        <script>
            // 我的pdf文件放在項(xiàng)目的pdf文件夾下,名字叫做Java.pdf,指定PDF從20頁(yè)開(kāi)始閱讀
            PDFObject.embed("pdf/Java.pdf", "#example1", {page: "20"});
        </script>
    </body>
</html>

到此這篇關(guān)于Vue使用pdfobject實(shí)現(xiàn)預(yù)覽pdf的示例詳解的文章就介紹到這了,更多相關(guān)Vue pdfobject預(yù)覽pdf內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入分析element ScrollBar滾動(dòng)組件源碼

    深入分析element ScrollBar滾動(dòng)組件源碼

    這篇文章主要介紹了element ScrollBar滾動(dòng)組件源碼深入分析,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • 五分鐘搞懂Vuex實(shí)用知識(shí)(小結(jié))

    五分鐘搞懂Vuex實(shí)用知識(shí)(小結(jié))

    本篇文章主要介紹了五分鐘搞懂Vuex實(shí)用知識(shí),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 前端項(xiàng)目中如何使用百度地圖api(含實(shí)例)

    前端項(xiàng)目中如何使用百度地圖api(含實(shí)例)

    當(dāng)我們遇到定位展示的時(shí)候會(huì)出現(xiàn)使用地圖展示的需求,下面這篇文章主要給大家介紹了關(guān)于前端項(xiàng)目中如何使用百度地圖api(含實(shí)例)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • vue+jsplumb實(shí)現(xiàn)連線繪圖

    vue+jsplumb實(shí)現(xiàn)連線繪圖

    這篇文章主要為大家詳細(xì)介紹了vue+jsplumb實(shí)現(xiàn)連線繪圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • vue動(dòng)態(tài)改變背景圖片demo分享

    vue動(dòng)態(tài)改變背景圖片demo分享

    今天小編就為大家分享一篇vue動(dòng)態(tài)改變背景圖片demo分享,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • vue實(shí)現(xiàn)左右點(diǎn)擊滾動(dòng)效果

    vue實(shí)現(xiàn)左右點(diǎn)擊滾動(dòng)效果

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)左右點(diǎn)擊滾動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Vue項(xiàng)目中首頁(yè)長(zhǎng)時(shí)間白屏的原因以及解決過(guò)程

    Vue項(xiàng)目中首頁(yè)長(zhǎng)時(shí)間白屏的原因以及解決過(guò)程

    這篇文章主要介紹了Vue項(xiàng)目中首頁(yè)長(zhǎng)時(shí)間白屏的原因以及解決過(guò)程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Vue響應(yīng)式添加、修改數(shù)組和對(duì)象的值

    Vue響應(yīng)式添加、修改數(shù)組和對(duì)象的值

    有些時(shí)候,不得不想添加、修改數(shù)組和對(duì)象的值,但是直接添加、修改后又失去了getter、setter,由于JavaScript的限制, Vue不能檢測(cè)以部分變動(dòng)的數(shù)組
    2017-03-03
  • vue清除瀏覽器全部cookie的問(wèn)題及解決方法(絕對(duì)有效!)

    vue清除瀏覽器全部cookie的問(wèn)題及解決方法(絕對(duì)有效!)

    最近項(xiàng)目要實(shí)現(xiàn)關(guān)閉瀏覽器清除用戶緩存的功能,下面這篇文章主要給大家介紹了關(guān)于vue清除瀏覽器全部cookie的問(wèn)題及解決方法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • 詳解vue中使用微信jssdk

    詳解vue中使用微信jssdk

    這篇文章主要介紹了vue中使用微信jssdk,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04

最新評(píng)論

滦南县| 灯塔市| 富平县| 龙里县| 绥芬河市| 晴隆县| 台湾省| 泗洪县| 永顺县| 石屏县| 伽师县| 图木舒克市| 忻城县| 蓝山县| 曲靖市| 维西| 九龙城区| 拉萨市| 江安县| 揭西县| 南澳县| 古田县| 突泉县| 太仆寺旗| 阳曲县| 岫岩| 积石山| 福贡县| 连云港市| 阿合奇县| 华蓥市| 北安市| 崇信县| 南乐县| 江川县| 阿拉善盟| 汶川县| 祁门县| 通道| 社旗县| 柳州市|