一、pdf.js简介
PDF.js 是一个使用 HTML5 构建的便携式文档格式查看器。
pdf.js 是社区驱动的,并由 Mozilla 支持。我们的目标是为解析和呈现 PDF 创建一个通用的、基于 Web 标准的平台。
pdf.js 将 PDF 文档转换为 HTML5 Canvas 元素,并使用 JavaScript 控制文档的呈现和交互。pdf.js 使得不需要在计算机上安装 Adobe Reader 或其他 PDF 阅读器就可以在 Web 上阅读 PDF 文档成为可能。
pdf.js是一个免费的开源软件。
支持谷歌、火狐浏览器,支持pc手机端浏览器。
Git地址:GitHub - mozilla/pdf.js: PDF Reader in JavaScript
官网地址:PDF.js
下载地址:Getting Started
二、pdf.js 使用说明
https://mozilla.github.io/pdf.js/examples/
中文使用介绍整理:
简介 - PDF.js 中文文档
三、pdf.js 使用Demo案例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="../build/pdf.js"></script> <style> html, body { padding: 0px; margin: 0px; overflow-x: hidden; } </style> </head> <body> <div id="container"></div> <script> var container, pageDiv, pdfDoc; var winWidth = window.innerWidth; function getPDF(url) { pdfjsLib.getDocument(url).promise.then((pdf) => { pdfDoc = pdf; container = document.getElementById('container'); for (var i = 1; i <= pdf.numPages; i++) { renderPDF(i); } }) } function renderPDF(num) { pdfDoc.getPage(num).then((page) => { var scale = winWidth / (page.getViewport({ scale: 1 }).width); var viewport = page.getViewport({ scale: scale }); console.info(viewport); pageDiv = document.createElement('div'); pageDiv.setAttribute('id', 'page-' + (page.pageIndex + 1)); pageDiv.setAttribute('style', 'position: relative'); container.appendChild(pageDiv); var canvas = document.createElement('canvas'); pageDiv.appendChild(canvas); var context = canvas.getContext('2d'); canvas.height = viewport.height; canvas.width = viewport.width; var renderContext = { canvasContext: context, viewport: viewport }; page.render(renderContext); }); } getPDF('compressed.tracemonkey-pldi-09.pdf'); </script> </body> </html>
复制
展示效果:
四、pdf.js 在线使用案例
在线阅读器预览:
https://mozilla.github.io/pdf.js/web/viewer.html
使用方案:file=(指定自己的pdf文件地址即可)
下载源码后viewer.html文件就是在线阅读器。
https://mozilla.github.io/pdf.js/web/viewer.html?file=指定自己的pdf地址
更多:
网页在线打开PDF_网站中在线查看PDF之TouchPDF
JS实现网页选取截屏 保存+打印 功能(转)