(1)用iframe标签src="文件地址"就可以直接打开,还可以设置width,height等属性。
具体参考iframe属性
。
<iframe src="http://localhost:8080/%E9%9F%A6%E6%88%90%E7%8E%89.pdf"></iframe>
(2)直接a标签src="文件地址"
<a href="文件地址"></a>
(3)使用微软的方法
微软官方文档(有缺陷不建议使用)
(4)使用插件
vue 中 实现pdf预览
上面的 1,2,3都可以使用,但1,2,3 使用的是 浏览器自带的 pdf预览功能,样式不统一,如果介意的话 就只能 使用插件了。
4的话插件有 vue-pdf、pdf.js 等。
react 中 实现pdf预览
上面的 1,2,3都可以使用,但1,2,3 使用的是 浏览器自带的 pdf预览功能,样式不统一,如果介意的话 就只能 使用插件了。
4的话插件有 react-pdf、pdf.js、react-file-viewer等。
React中使用react-file-viewer,实现预览office文件(pdf,word,xlsx等文件)前端实现,在浏览器打开文件_崽崽的谷雨的博客-CSDN博客_react-file-viewer
禁用 pdf打印功能
用插件自带的api
pdf.js 禁用
通过pdfjs实现在VUE-CLI中进行PDF预览,并禁用打印及下载功能_qq_24800489的博客-CSDN博客_iframe预览pdf文件流
其它插件 大同小异 ,可以自行 查资料。
用js 禁用
其实这个也不算是禁用,只是 把 按钮 和图标 隐藏了。
1.以 谷歌浏览器自带的为例子
快速打开的方法就是 拖动pdf到浏览器 里就能看到。
思路: 就是 用js隐藏下载的 图标
获取到 图标 给其 隐藏
这一步看起来 简单 但是 我一开始 试了很多遍都不行,因为 涉及到shadow-root
截图如下:
审查元素 会发现 dom被 shadow-root 包裹,所以 获取元素 就不能用常规的 document方法,需要使用
shadowRoot。
let c = document.querySelector("#viewer").shadowRoot.querySelector("#toolbar").shadowRoot.querySelector("#print");
c.remove();
运行这个代码 会发现 打印的图标消失了,如果下载也要 消失 用同一个方法即可。
快速获取 想要元素的 js代码技巧:
1.选中元素 然后 鼠标右击
2.选择 copy 里的 copy js path 即可
Copy js path 复制 js 路径 快速生成 获取 该dom的 js代码 (很实用)
效果如下:
比如想要 下载 图标也消失 按照上面的 步骤 就可以获取到 。然后 就可以 加 remove或者 修改样式,修改内容都行。
document.querySelector("#viewer").shadowRoot.querySelector("#toolbar").shadowRoot.querySelector("#downloads").shadowRoot.querySelector("#download");
2. edge 也差不多
edge 都是 中文的操作步骤同上
1.选中元素 然后 鼠标右击
2.选择 复制 里的 复制js路径 即可
去除效果 如下:
我 这个只是 隐藏了 ,你可以获取到元素后 接着 拓展 比如: 更换图标 ,修改样式 等等。
谷歌浏览器 控制台使用技巧
PDF
在线
预览
插件屏蔽
下载
与屏蔽
打印
功能
,进行源代码的修改,杜绝非法用户进行
PDF
文件的
下载
与盗取操作。可以进行文件流实现
PDF
在线
预览
。
针对当前盖章签名的
pdf
可以进行正常
预览
。
pdf
.worker.
js
viewer.
js
进行修改 并且进行重新编译。
1.如果使用的是window.parent.open打开的
pdf
则是在连接后面加。修改源码viewer.html中Download和Print增加样式。调用
PDF
Object.embed的页面也要加入上面的
禁用
菜单代码。2.采用的是
PDF
Object.embed
预览
pdf
。在viewer.html的底部增加
禁用
。...
function download(blobUrl, filename) {}在这个下面写调用方法。1. 禁止
打印
搜索window.print = function print(){}在这个下面写调用方法。2.禁止
下载
(function (root, factory) {viewer.
js
中添加。
这是小姐姐前不久接到的需求,公司网站上的
pdf
仅供用户浏览,一开始,我是拒绝的,这个浏览
pdf
,并且
下载
pdf
是
浏览器
查看
pdf
时自带的
功能
,我总不至于去改
浏览器
吧。哎呀,转念一想,有没有方法是不在
浏览器
中直接打开
pdf
文件,而是以html的形式浏览
pdf
呢?
出于好奇(maybe),开始查资料,诶,让我找到了一个东西,叫
pdf.js
, 其网站如下:
pdf.js
官网 ...
此模块可用于直接通过HTML,CSS,
JS
创建可
打印
报告(而不是Word,OpenOffice,Latex等)。
我们建议您使用Google Chrome
浏览器
打印
文档(甚至可以将其保存为
PDF
)。 使用Firefox,您应该在
打印
预览
模式下使用比例尺(有时可以选择“缩小以适合”,否则选择100%,90%,80%...并检查页面是否正确),然后
打印
。 在Windows上,您可以安装Cute
PDF
Writer以将文档从firefox导出为
PDF
(但Chrome更好)。
在(Chrome的)对话框中,确保选择以下设置:
纸张尺寸:“ A4”
禁用
“页眉和页脚”
边距:“默认”
在
预览
窗口中检查一切正常
打印
;)
您需要使用jQuery才能使
JS
Print正常工作。
将
js
print.css和
js
print.
js
下载
到您的目录
创建您的.html文件
大家在使用
pdf
的时候如果用普通的方法使用是没有办法禁止
下载
,
打印
之类的
功能
的,所以就用到了
pdf
而且这个插件
功能
相当强大,还可以直接复制粘贴
pdf
内的内容,有兴趣的朋友看下
PDF.js
实际运行起来的页面UI效果:http://mozilla.github.io/
pdf.js
/web/viewer.html
解决办法:
1:大家打开控制台 找到
下载
的代码 然后在你
下载
的
pdf
/web/view...