由于项目需要,需要通过前台点击项目列表浏览对应的PDF文件内容(由于权限控制不允许下载),特此记录下实现过程。

1、下载需要用到的插件PDF.js(http://mozilla.github.io/pdf.js/),然后解压后将里面的文件放入新建的PDF.js文件夹里,再将PDF.js文件夹放入项目的资源文件备用。

2、后台获取到文件转化成流的方式通过接口传递给前台,以java为例如下:

String filepath=fileVo.getFilepath();
        String filename=fileVo.getFilename();
        if(filepath!=null){
            //设置反应类型
             try {
                     java.io.File file=new java.io.File(filepath);
                     if(!file.exists()){
                         return;
                     }

//利用PDF.js读取文件涉及到跨域访问,故添加权限
                     response.setHeader("Access-Control-Allow-Origin", "*");
                    response.setContentType("application/octet-stream;charset=utf-8");
                    response.setHeader("Content-Disposition", "attachment;filename="+file.getName());
                } catch (Exception ex) {
                    ex.printStackTrace();
                }
            //读取指定路径下面的文件
            InputStream in = new FileInputStream(filepath);
            OutputStream outputStream = new BufferedOutputStream(response.getOutputStream());
            //创建存放文件内容的数组
            byte[] buff =new byte[1024];
            //所读取的内容使用n来接收
            int n;
            //当没有读取完时,继续读取,循环
            while((n=in.read(buff))!=-1){
                //将字节数组的数据全部写入到输出流中
                outputStream.write(buff,0,n);
            }
            //强制将缓存区的数据进行输出
            outputStream.flush();
            //关流
            outputStream.close();
            in.close();
        }

3、前台点击列表访问后台接口读取文件流然后展示在界面上,如下所示:

<!--用于展示文件的页面-->

<iframe name="myframe" src="" width="100%;" height="600px; " ></iframe>

<!--页面点击-->

<a  href='服务器地址/项目里PDF.js的文件地址/PDF.js/web/viewer.html?file=‘读取文件流的后台接口地址'  target='myframe'>点击展示PDF</a>";

最后即可在iframe里展示具体的PDF文件,可以进行各种操作

前端页面查看PDF文档内容总结相关推荐

  1. 如何批量提取 PDF 文档内容,将 PDF 格式文档转为 Txt 文本格式

    概要:PDF 文档常常用来阅读.预览或者存档一些资料,PDF 支持的内容也是比较丰富的.可以支持图片.文本等多种类型的元素.那有时候我们就需要将一些纯文本的 PDF 文档中的文字提取出来,转为一个 T ...

  2. 使用HttpHandler解析并展示PDF文档内容

    前言 如果我们想将服务端的PDF文档内容展示给客户端,往往会通过URL直接访问的方式.这样一来,PDF文档就会毫无保留的保存到客户端去,通过浏览器的PDF插件,客户端可以随意拷贝PDF的副本.(如下图 ...

  3. HttpHandler解析并展示PDF文档内容

    2019独角兽企业重金招聘Python工程师标准>>> HttpHandler 解析并展示 PDF 文档内容 如果我们想将服务端的 PDF 文档内容展示给客户端,往往会通过 URL ...

  4. java操作office和pdf文件java读取word,excel和pdf文档内容

    在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下Java对word.excel.pdf文件的读取.本篇博客只是讲解简单应 ...

  5. 编辑PDF文档内容有哪些方法

    PDF文件采用的是字型嵌入系统,能将字型随文件一起进行传输,所以文档在浏览查看以及传输上要优于word文档文档格式,但是这种文档在编辑的时候就没那样简单了,要是在遇到PDF格式的文档需要编辑该怎样去处 ...

  6. android pdfview 显示目录,Android 查看pdf文档——PDFView

    最近在搞Android显示word文档跟pdf文档的显示,分享一个显示pdf文档的小Demo(ps:word文档的显示网上挺多的).   这里使用的是PDFView,是GitHub上面的一个开源项目点 ...

  7. Android 查看pdf文档——PDFView

    最近在搞Android显示word文档跟pdf文档的显示,分享一个显示pdf文档的小Demo(ps:word文档的显示网上挺多的). 这里使用的是PDFView,是GitHub上面的一个开源项目点击查 ...

  8. 怎样使用PDF阅读器浏览查看PDF文档

    在电脑上查看PDF文件或者其他格式电子书的时候都会通过相应的软件来打开查看,虽然通过浏览器或者word这类软件应用也能查看PDF,但是只能浏览文件内容,不能查看文档目录以及进行一些简单操作. 使用工具 ...

  9. ABBYY FineReader 14如何查看PDF文档

    使用 ABBYY FineReader,您可以轻松查看和编辑任何类型的 PDF文档,就像是一款功能强大的PDF编辑转换器,不仅如此,它还能够允许您复制其中的文本.图片和表格.本文我们来看看如何从&qu ...

最新文章

  1. 基于PyTorch的Seq2Seq翻译模型详细注释介绍(一)
  2. 【C 语言】二级指针作为输入 ( 自定义二级指针内存 | 二级指针 排序 | 通过 交换指针方式 进行排序 )
  3. 组合问题 contest4
  4. 笔记-中项案例题-2018年上-人力资源管理
  5. 关于 数据文件自增长 的一点理解
  6. [习题].FindControl()方法 与 PlaceHolder控件 #2(动态加入「子控件」的事件)
  7. rufus中gpt和mrb磁盘_计算机关于磁盘的大杂烩
  8. python 文件指针在文件末尾_python文件操作及seek偏移详解
  9. 新松机器人发行价_知识创造财富,“机器人第一股”背后的院士是怎样炼成的?...
  10. openoffice转化太慢且不能多线程_职场新人众多工作要处理,手足无措咋办?“多线程工作法”来救急...
  11. windows鼠标响应相关知识
  12. 点击按钮跳转页面_获取快手主页跳转url scheme 协议的方法(app通用方法)
  13. Hack with Lenna | PIX与诗歌、自动驾驶和图像识别
  14. wps带阴影的边框怎么设置_WPS表格阴影边框如何设置,手把手教你如何设置
  15. EasyBoot中文启动光盘制作教程
  16. 小新面试错题集,http1.0与1.1的区别?
  17. 解决 Navigating to current location (/userslist) is not allowed问题。
  18. 双 JK 触发器 74LS112 逻辑功能。真值表_数字电路学习笔记(十一):时序逻辑...
  19. Android系统应用
  20. 软件从业人员在代码之外如何提升自己的软技能

热门文章

  1. UOS 22.0家庭版使用体验
  2. 基于深度卷积神经网络的人脸识别考勤系统-VGG-PYTHON-QT(1)
  3. python文件路径path
  4. 一天上手Aurora 8B/10B IP核(5)----从Framing接口的官方例程学起
  5. 二叉树的遍历(递归、非递归)
  6. raw图的存储格式和读取方式
  7. mysql 1701,MySQL ERROR 1701 (42000)
  8. python教程68--cufflinks库绘图功能
  9. 数模--0-1规划问题~Matlab中 intlinprog函数用法简介
  10. java项目中使用ffmpeg剪辑部分视频