intelogie / pdf.js
This package is auto-updated.
Last update: 2024-08-23 22:25:40 UTC
README
PDF.js 是一个基于 HTML5 构建的便携式文档格式(PDF)查看器。
PDF.js 由社区驱动并由 Mozilla Labs 支持。我们的目标是创建一个通用的、基于 Web 标准的平台,用于解析和渲染 PDF 文件。
贡献
PDF.js 是一个开源项目,始终欢迎更多的贡献者。要参与其中,请查看
如果您有任何进一步的问题或需要指导,请随时在 irc.mozilla.org 的 #pdfjs 上咨询。
入门
在线演示
浏览器扩展
Firefox(和 Seamonkey)
PDF.js 已内置到 Firefox 的 19+ 版本中,但仍有一个扩展可用
开发版本 - 此扩展主要面向开发人员和测试人员,并且每次将新代码合并到 PDF.js 代码库时都会更新。它应该相当稳定,但有时可能会中断。
请注意,该扩展 不保证 与当前 ESR 版本 更早 的 Firefox 版本兼容,请参阅 发布日历。
如果 Seamonkey 基于上述 Firefox 版本(请参阅 SeaMonkey 2.x 对应哪个 Firefox 版本?),则该扩展也应正常工作,但我们 不保证 兼容性。
Chrome
- 可以从 Chrome 网上应用店 安装 Chrome 的官方扩展。此扩展由 @Rob--W 维护。
- 自己构建 - 如下所述获取代码,然后执行
gulp chromium
。然后打开 Chrome,转到工具 > 扩展
,并从build/chromium
目录加载(未打包)的扩展。
获取代码
要获取当前代码的本地副本,请使用 git 进行克隆
$ git clone git://github.com/mozilla/pdf.js.git
$ cd pdf.js
接下来,通过 官方包 或通过 nvm 安装 Node.js。您需要全局安装 gulp 包(另请参阅 gulp 入门)
$ npm install -g gulp-cli
如果一切顺利,请安装 PDF.js 的所有依赖项
$ npm install
最后,您需要启动一个本地 Web 服务器,因为某些浏览器不允许使用 file:// URL 打开 PDF 文件。运行
$ gulp server
然后您就可以打开
- http://localhost:8888/web/viewer.html
还可以通过打开来查看右侧的所有测试 PDF 文件
- http://localhost:8888/test/pdfs/?frame
构建 PDF.js
为了将所有 src/
文件打包成两个生产脚本并构建通用查看器,请执行以下命令
$ gulp generic
这将生成 pdf.js
和 pdf.worker.js
文件,保存在 build/generic/build/
目录下。这两个脚本都是必需的,但只需要包含 pdf.js
,因为 pdf.worker.js
将由 pdf.js
加载。如果您想支持比 Firefox 更多的浏览器,还需要包含来自 build/generic/web/
的 compatibility.js
文件。PDF.js 文件较大,应进行压缩以供生产使用。
在 Web 应用程序中使用 PDF.js
要在 Web 应用程序中使用 PDF.js,您可以选择使用库的预构建版本或从源代码构建。我们提供了以 pdfjs-dist
为名的预构建版本,以供与 NPM 和 Bower 一起使用。有关更多信息及示例,请参阅此主题的 维基页面。
学习
您可以直接通过下面的实时演示在浏览器中与 PDF.js API 进行交互
仓库中包含一个您可以在本地运行的 hello world 示例
要了解 PDF.js 代码的介绍,请查看我们的贡献者 Julian Viereck 的演示
您可以在这里了解更多关于 PDF.js 的信息
- http://andreasgal.com/2011/06/15/pdf-js/
- http://blog.mozilla.com/cjones/2011/06/15/overview-of-pdf-js-guts/
更多学习资源可以在以下找到
问题
查看我们的常见问题解答,获取常见问题的答案
在 IRC 上与我们交谈
- #pdfjs on irc.mozilla.org
加入我们的邮件列表
您可以使用 lists.mozilla.org 或 Google Groups 进行订阅
- https://lists.mozilla.org/listinfo/dev-pdf-js
- https://groups.google.com/group/mozilla.dev.pdf-js/topics
在 Twitter 上关注我们:@pdfjs
每周公开会议