使用pdfobject.js实现在线浏览PDF

闲来无事,就翻看了一个同学的作品,作品中有一个展示他的简历的页面,简历写在一个PDF中。

 

然后在页面中直接显示出来了,可以下载,还可以打印,这个技术我还没有尝试过呢。

 

正好想弄点新鲜玩意儿玩玩,忽然想起前段时间我也收藏过关于这个技术的几篇博客,就把这几篇收藏打开,看看怎么实现这个效果。

 

 

▍特点

 

1、能自由选择需要浏览的页面

 

 

2、从左至右依次为PDF转向、下载、打印、查看目录(这款插件能自动识别PDF目录,并且根据目录进行快速访问)

 

 

 

3、调整PDF大小

 

 

 

▍框架

 

几乎所有的博客都写到了一个叫做pdfobject.js的框架,所以我也在官网下载了这个js框架。

 

官网:https://pdfobject.com/

 

 

▍操作步骤及代码

 

1、下载js框架

 

1.1、打开官网:https://pdfobject.com/

 

 

 

1.2、下载框架

 

 

1.3、文件目录如下,至此,第一步完成

 

 

2、部署js框架

 

2.1、将pdfobject.js或pdfobject.min.js放入项目存放js文件的文件夹中

 

 

 

2.2、在html文件中引入这个文件,以pdfobject.min.js为例

<script type="text/javascript" src="js/pdfobject.min.js"></script>

3、应用框架并实现在线浏览PDF的效果

 

3.1、最简单的应用

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>在线浏览PDF</title>
    </head>
    
    <body>
    
        <script type="text/javascript" src="js/pdfobject.min.js"></script>
        <script>
            // 我的pdf文件放在项目的pdf文件夹下,名字叫做Java.pdf
            PDFObject.embed("pdf/Java.pdf");
        </script>
    </body>
</html>

效果:

 

 

3.2、效果1:在指定位置(当指定位置为全局时)浏览PDF,最终效果类似3.1,不做演示

<!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{
                /* 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文件放在项目的pdf文件夹下,名字叫做Java.pdf
            PDFObject.embed("pdf/Java.pdf", "#example1");
        </script>
    </body>
</html>

3.3、效果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;
                /* 添加背景颜色是为了方便查看整个body范围 */
                background-color: cornflowerblue;
            }
            
            #example1{
                /* 设置放置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文件放在项目的pdf文件夹下,名字叫做Java.pdf
            PDFObject.embed("pdf/Java.pdf", "#example1");
        </script>
    </body>
</html>

效果:

 

 

3.4、效果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{
                /* 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文件放在项目的pdf文件夹下,名字叫做Java.pdf,指定PDF从20页开始阅读
            PDFObject.embed("pdf/Java.pdf", "#example1", {page: "20"});
        </script>
    </body>
</html>

效果:

 

 

4、目前我了解到的切实有用的大致就只有以上这些了

 

 

▍我是尾巴

 

简单实用,不可多得。

 

关注微信公众号:爱唱歌的蜗牛先生

 

 

  • 6
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 36
    评论
评论 36
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值