广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Vue使用pdfobject实现预览pdf的示例详解
  • 619
分享到

Vue使用pdfobject实现预览pdf的示例详解

Vue pdfobject预览pdfVue预览pdfVue pdfobject 2023-03-15 17:03:25 619人浏览 独家记忆
摘要

目录安装 引入 使用 效果 补充之前写过一篇预览pdf的,Vue使用vue-pdf实现PDF文件预览 ,大家按需所用 一般项目中在上传文件之前

之前写过一篇预览pdf的,Vue使用vue-pdf实现PDF文件预览 ,大家按需所用

一般项目中在上传文件之前可能会有 先预览一下,看是否符合要求,符合再上传,这里先说了pdf文件,使用pdfobject库,也很方便

安装 

pnpm add pdfobject

引入 

import pdf from 'pdfobject'

使用 

这里使用会借助于FileReader,FileReader用于读取文件 

// 点击文件上传回调
handlePreview(file) {
  const { raw } = file
  // 预览pdf
  // FileReader用于读取文件
  let reader = new FileReader()
  reader.readAsDataURL(raw) // 这里只需要将文件传进去就可以了
  reader.onload = e => {
    // reader.result 同 e.target.result
    // 1.文件名 2.要将pdf渲染到的指定位置(dom元素) 3.指定在embed标签中的显示的宽度
    pdf.embed(reader.result, '#previewPdfAndDocx', { width: '100%' })
  }
},

效果 

我这里没在上传之前判断,这里是上传之后,点击文件的时候进行预览,也可以在上传文件之前进行预览,然后决定是否进行上传。根据具体项目需求来 

补充

除了上文,还可以利用pdfobject实现其他功能,希望对大家有所帮助

效果1:在指定位置(当指定位置为全局时)浏览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;
            }
             
            #example1{
                height: 100%;
            }
             
            .pdfobject-container{
                
            }
             
            .pdfobject{
                
            }
        </style>
    </head>
     
    <body>
        <div id="example1"></div>
             
        <script type="text/javascript" src="js/pdfobject.min.js"></script>
        <script>
            // 我的pdf文件放在项目的pdf文件夹下,名字叫做Java.pdf
            PDFObject.embed("pdf/Java.pdf", "#example1");
        </script>
    </body>
</html>

效果2:在指定位置(当指定位置为局部时)浏览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;
                
                background-color: cornflowerblue;
            }
             
            #example1{
                
                height: 50%;
                width: 50%;
            }
             
            
            .pdfobject-container{
                
            }
             
            
            .pdfobject{
                
            }
        </style>
    </head>
     
    <body>
        <div id="example1"></div>
             
        <script type="text/javascript" src="js/pdfobject.min.js"></script>
        <script>
            // 我的pdf文件放在项目的pdf文件夹下,名字叫做Java.pdf
            PDFObject.embed("pdf/Java.pdf", "#example1");
        </script>
    </body>
</html>

效果3:指定从多少页开始阅读(必须同时指定显示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>
            
            html,body{
                height: 100%;
                overflow: hidden;
            }
             
            #example1{
                height: 100%;
            }
             
            .pdfobject-container{
                
            }
             
            .pdfobject{
                
            }
        </style>
    </head>
     
    <body>
        <div id="example1"></div>
             
        <script type="text/javascript" src="js/pdfobject.min.js"></script>
        <script>
            // 我的pdf文件放在项目的pdf文件夹下,名字叫做Java.pdf,指定PDF从20页开始阅读
            PDFObject.embed("pdf/Java.pdf", "#example1", {page: "20"});
        </script>
    </body>
</html>

到此这篇关于Vue使用pdfobject实现预览pdf的示例详解的文章就介绍到这了,更多相关Vue pdfobject预览pdf内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Vue使用pdfobject实现预览pdf的示例详解

本文链接: https://www.lsjlt.com/news/199971.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作