spring boot2.X word在线预览 pdf.js
最近公司项目需求需要在线预览word文档,并且不能在在线下载和编辑。在此记录我是如何做的。
针对word的在线预览网上大多给的解决方案就是先把word文件转成pdf,然后通过pdf.js在线预览pdf。
下面是详情详细的操作步骤;
1.springboot继承jodconverter把非pdf文件转成pdf
详细请查看我另一篇文章:spring boot2.X word转pdf_zenghu_10的博客-CSDN博客_springboot word转pdf
2.下载pdf.js所需文件并集成到spring boot
pdf.js下载地址:Getting Started
下载之后是这么个目录,把当前目录的文件以及文件夹copy到spring boot的statifc中,确保能通过域名加地址直接访问.
我是在static中创建了一个pdfjs文件夹,把所有文件都放到此文件夹中。
这是copy之后的情况。
3.使用pdf.js进行文件预览
pdf.js文件预览的关键是web中的viewer.html文件,只需要访问该文件,并把你要预览的pdf文件路径当做参数传递过去就可以实现预览啦。
例如:我的pdf文件路径为项目的static下面的/upload/works/course/1561101210883411_doc_to_pdf.pdf并且该文件可以直接通过http://localhost/upload/works/course/1561101210883411_doc_to_pdf.pdf路径进行访问。
预览是访问的地址就是http://localhost/pdfjs/web/viewer.html?file=/upload/works/course/1561101210883411_doc_to_pdf.pdf
效果图:
注意:如在预览中遇到“file origin does not match viewer”错误请把web文件夹下面的viewer.js文件中的此行注释掉
4.禁止下载和打印文件
由于pdf.js自带下载和打印功能,需要禁止下载和打印。
在处理该问题时我在网上也找了解决办法,好多都说把web文件夹下面的viewer.html中的Print和Download 2个button按钮隐藏掉就可以了,这种方式我试了,不好使,不知道是因为我版本比较新的问题还是怎么回事,目前我的pdf.js的版本为"pdfjs-2.0.943-dist"。
最终我的解决方案:在web文件夹中的viewer.js中把打印和下载的点击触发的click事件行为进行修改,触发click水事件时来提示禁止打印和下载,以此来完成禁止打印,下载。
至此结束!
spring boot2.X word在线预览 pdf.js相关推荐
- html5 pdf.js 使用方法,PDF 文件在线预览(pdf.js 使用教程)
因项目开发需要在线展示 PDF文件,为解决 PDF文件 在浏览器打开后电子签章.电子签名等展示不全且部分浏览器兼容问题特利用pdf.js解决该问题: pdf.js框架为HTML5,无需任何本地支持,兼 ...
- pdf在线预览 pdf.js的使用
1.官网:https://mozilla.github.io/pdf.js/ 2.使用方法 1) 通过官网,下载pdfJs插件包,放至项目中: window.open("./js/pdfJS ...
- 前端【vue】实现文档在线预览功能,在线预览pdf、word、xls、ppt等office文件
前端江太公 前端实现文档在线预览功能 最直接的就是使用XDOC 文档云服务 XDOC可以实现预览以DataURI表示的DOC文档,此外XDOC还可以实现文本.带参数文本.html文本.json文本.公 ...
- office在线预览 word在线预览 .net在线预览 文件在线浏览接口
office在线预览 word在线预览 excel在线预览 文件浏览接口服务 支持移动端浏览,只要能使用浏览器上网都可以使用,不需要安装任何第三方工具. 1.word在线预览 excel在线预览,.n ...
- android 在线预览pdf文件
android原生webView不支持预览pdf文件,ios却可以,所以android想要实现在线预览webView要通过其他方法,有以下几种方法: 1.andorid原生自带的pdf管理库,主要提供 ...
- 前端如何实现 Word 在线预览
前端如何实现 Word 在线预览 在前端实现 Word 文件在线预览时,常用的方法包括使用第三方库.浏览器插件.后端服务器.在线文档转换平台等,具体如下: 使用第三方库 常见的前端第三方库包括 Mam ...
- js在线预览pdf,doc,xls,jpg等文件
由于项目需要,需要在上传文件后在线预览所上传的文件.最开始我的思路就是想到各种插件什么的.比如说pdf.js.pdfobject,但最后都没能达到我所想要的效果. 最后我发现,原来,只需要一个很简单的 ...
- WEB在线预览PDF
这是我在博客园发表的第一篇文章.以后会陆续把在线预览其他格式文档的解决方案发表出来. 解决思路:把pdf转换成html显示. 在线预览pdf我暂时了解3种解决方案,欢迎大家补充. 方案一: 利用pdf ...
- html中在线预览pdf文件之pdf在线预览插件
html中在线预览pdf文件之pdf在线预览插件 最近遇到一个需求,要在html页面查看pdf生成的pdf文件! 翻来覆去找到两种办法 ,最后采用了jquery.media.js插件 方式一 将pdf ...
最新文章
- Science Bulletin:上海植生所王二涛组发表基于绝对丰度的植物根际微生物群落“扩增-选择”组装模型
- 超分辨率(super-resolution)VS解模糊(deblur)
- 深入理解DIP、IoC、DI以及IoC容器
- 【Ray Tracing in One Weekend 超详解】 光线追踪1-7 Dielectric 半径为负,实心球体镂空技巧...
- 计算机丢失quartz.dll什么意思,win7系统中出现缺少quartz.dll文件的修复方法
- mysql group set,Mysql--group_concat()、group by、find_in_set()使用笔记
- memcached构建高性能web应用
- Latex写作学习——(大学生数学建模论文模板)
- 微电子科学与工程是否属于计算机类专业,微电子科学与工程专业属于什么学科...
- Android 如何开启与关闭adb 的认证机制(google adb secure) (adb RSA 指纹认证)
- 7-139 手机话费
- TCP三次握手之-awl工具-SYN洪水攻击
- Calcite的RelFieldTrimmer简介
- Windows10系统自带Microsoft图片发黄
- pdcp层的作用_LTE系统中PDCP子层功能研究
- 清除maven仓库lastUpdated文件
- call by value 和 call by reference
- 【知识碎片】python 字符串格式化输出:%d,%s,%f
- Linux2019/7/30.1
- 深入理解webpack自动刷新浏览器
热门文章
- 【620】【信息管理基础】【信息政策与信息法律】
- WinSCP集成PuTTY
- winform项目——计算器程序01:标准窗体设计
- ios webview html交互 卡死,iOS 之webview 的js交互(alert、confirm、prompt)弹窗造成界面卡死...
- 月度计划:2022年5月
- 服务器性能-一台服务器能承载多少人同时访问?
- 坐标变换中等幅值变换和等功率变换
- 安装TIA博途V14 SP1后,打开软件时系统提示出现一个并行的错误_解决办法
- RationalDMIS 2020 “拟合坐标系”功能
- 普及什么是“国家队”,国家队“黑阔”,安全公司“黑客”