博客
关于我
PDF.js 帮助文件
阅读量:738 次
发布时间:2019-03-21

本文共 2267 字,大约阅读时间需要 7 分钟。

PDF.js 帮助文件

译自官方 Readme.md 文档。

是使用HTML5构建的一个PDF(Portable Document Format)阅读器。

PDF.js 是社区驱动的,并由 Mozilla 提供支持。我们的目标是创建一个通用的、基于web标准的平台,以解析和渲染PDF文件。

成为贡献者

PDF.js 是一个开源项目,欢迎更多的贡献者加入我们。如果你有兴趣的话,请访问:

如有疑问或需要指导,请随时访问我们的 。

入门

在线demo

请注意“现代浏览器”指的是它们原生支持以下特性:如 async/await, ReadableStream, 可选链(optional chaining),以及

空值合并(nullish coalescing)。

  • 现代浏览器(Modern browsers): https://mozilla.github.io/pdf.js/web/viewer.html

  • 旧浏览器(Older browsers):https://mozilla.github.io/pdf.js/legacy/web/viewer.html

Browser Extensions

Firefox

PDF.js 已经内嵌到 19 以上版本的 Firefox。

Chrome

  • 可以从 .上为Chrome安装官方插件。
    该插件由 进行维护。
  • 自己构建 - 通过下面所述方式获取代码,然后再使用命令gulp chromium。然后打开Chrome,进入 Tools > Extension,从build/chromium目录中载入(未打包)插件。

获取代码

如果想要获取最新代码的本地副本,可以使用git进行复制:

$ git clone https://github.com/mozilla/pdf.js.git$ cd pdf.js

下一步,通过官网或 nvm 安装 Node.js,你还需要全局安装 gulp(见):

$ npm install -g gulp-cli

如果一切顺利,接下来再为 PDF.js 安装所有依赖:

$ npm install

最后,你需要启动一个本地Web服务器,因为有的浏览器不允许使用file:// URL 打开PDF文件。运行:

$ gulp server

然后你可以打开以下网址:

  • http://localhost:8888/web/viewer.html

请记住这需要一个现代而且最新的浏览器;PDF.js 库的非开发用法请参考“构建PDF.js”。

打开以下网址,可以在右侧查看完整的PDF测试文件:

  • http://localhost:8888/test/pdfs/?frame

构建 PDF.js

为了将所有 src/ 文件都打包进两个生产用脚本中,并构建出通用阅读器,运行:

$ gulp generic

如果想要支持旧浏览器,运行:

$ gulp generic-legacy

这将在 build/generic/build/ 目录(相应的是build/generic-legacy/build/)中产生 pdf.jspdf.worker.js

两个脚本都不可或缺,但是只要引入 pdf.js 即可,因为 pdf.worker.js 会由 pdf.js 载入。PDF.js 文件较大,用于生产环境时应进行简化。

在Web应用中使用 PDF.js

在Web应用中使用 PDF.js,可以选择使用 pre-built 版本,或者直接从源代码构建。我们提供了可用 pre-built 版本,可以使用 NPM 和Bower 进行安装,其名称是 pdfjs-dist 。更多信息及示例请参考本主题的。

通过 CDN 引入

多个免费 CDN 都提供 PDF.js:

  • https://www.jsdelivr.com/package/npm/pdfjs-dist
  • https://cdnjs.com/libraries/pdf.js
  • https://unpkg.com/pdfjs-dist/

如何学习

可以直接在浏览器中使用以下在线示例来学习 PDF.js API:

更多示例可以在 中找到。 有的示例使用的是 pdfjs-dist 包,它可以通过gulp dist-install 命令在本repo目录中进行构建和安装。

关于 PDF.js 代码的介绍,可以查看贡献者 Julian Viereck 的视频:

  • https://www.youtube.com/watch?v=Iv15UY-4Fg8

更多学习资源可以访问以下网址:

  • https://github.com/mozilla/pdf.js/wiki/Additional-Learning-Resources

API 文档网址:

  • https://mozilla.github.io/pdf.js/api/

问题

查看 FAQs ,里面包含了常见问题的答案:

  • https://github.com/mozilla/pdf.js/wiki/Frequently-Asked-Questions

使用 Matrix联系:

  • https://chat.mozilla.org/#/room/#pdfjs:mozilla.org

提问:

  • https://github.com/mozilla/pdf.js/issues/new

在 twitter 上联系我们: @pdfjs

  • https://twitter.com/pdfjs

转载地址:http://vhhgz.baihongyu.com/

你可能感兴趣的文章
mysql CONCAT()函数拼接有NULL
查看>>
multiprocessing.Manager 嵌套共享对象不适用于队列
查看>>
multiprocessing.pool.map 和带有两个参数的函数
查看>>
MYSQL CONCAT函数
查看>>
multiprocessing.Pool:map_async 和 imap 有什么区别?
查看>>
MySQL Connector/Net 句柄泄露
查看>>
multiprocessor(中)
查看>>
mysql CPU使用率过高的一次处理经历
查看>>
Multisim中555定时器使用技巧
查看>>
MySQL CRUD 数据表基础操作实战
查看>>
multisim变压器反馈式_穿过隔离栅供电:认识隔离式直流/ 直流偏置电源
查看>>
mysql csv import meets charset
查看>>
multivariate_normal TypeError: ufunc ‘add‘ output (typecode ‘O‘) could not be coerced to provided……
查看>>
MySQL DBA 数据库优化策略
查看>>
multi_index_container
查看>>
MySQL DBA 进阶知识详解
查看>>
Mura CMS processAsyncObject SQL注入漏洞复现(CVE-2024-32640)
查看>>
Mysql DBA 高级运维学习之路-DQL语句之select知识讲解
查看>>
mysql deadlock found when trying to get lock暴力解决
查看>>
MuseTalk如何生成高质量视频(使用技巧)
查看>>