前端需要查看pdf文件的方法:
1. a链接查看。
这种方法就需要人为点击链接才会显示pdf文件内容,是显示还是下载就决定于浏览器的解释方法了。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Pdf预览</title>
</head>
<style></style>
<body>
<a href="test.pdf">Download PDF</a>
</body>
</html>
2. 标签embed查看pdf。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Pdf预览</title>
</head>
<style></style>
<body>
<embed src="test.pdf" type="application/pdf" width=800 height=800>
</body>
</html>
3. 标签object查看pdf。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Pdf预览</title>
</head>
<style></style>
<body>
<object data="test.pdf" type="application/pdf" width=800 height=800>
This browser does not support PDFs. Please download the PDF to view it: <a href="test.pdf">Download PDF</a>
</object>
</body>
</html>
4. iframe标签查看pdf。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Pdf预览</title>
</head>
<style></style>
<body>
<iframe src="test.pdf" width=900 height=900>
This browser does not support PDFs. Please download the PDF to view it: <a href="test.pdf">Download PDF</a>
</iframe>
</body>
</html>
5. 插件jquery.media.js
jQuery Media Plugin
是一款基于jQuery的网页媒体播放器插件,它支持大部分的网络多媒体播放器和多媒体格式 。“插件可以根据当前的脚本配置,自动将a标签替换成div,并生成object, embed甚至是iframe代码,至于生成object还是embed,jQuery Media会根据当前平台自动判别,因此兼容性方面非常出色。”所以这个插件的实现功能就是上面标签功能是一样的,那么在浏览器上面的显示也会是一样。
在使用时需要引入js文件, <script type="text/javascript"src="jquery.media.js"></script>
html端通过href来定位到需要打开的pdf文件。
<div><a class="media" href="pdf1.pdf"></a></div>
6. pdf.js框架
前面三种方法是基于标签,可能每个浏览器解释的效果不一样,那么pdf.js
框架利用js语言,就可以兼容统一的显示pdf文件。如果文档不想下载的话,可以在view.html中将下载按钮隐藏或删除,而标签的下载按钮就无法取消。
官网或者github上下载pdf.js
资源包,里面提供了一些使用demo
总结
前端需要查看pdf文件的方法总结。笔者以前在打开pdf文件时,有时候设计通过浏览器来打开的,也就是说浏览器本身是支持pdf文件格式,按照这个逻辑整理了一点资料来总结一下6种方法在前端编程查看服务器端的pdf文件
注:文章来源