|
|
|
@ -1,17 +1,80 @@
@@ -1,17 +1,80 @@
|
|
|
|
|
# pdf.js |
|
|
|
|
|
|
|
|
|
pdf.js is a technology demonstrator prototype to explore whether the HTML5 |
|
|
|
|
platform is complete enough to faithfully and efficiently render the ISO |
|
|
|
|
32000-1:2008 Portable Document Format (PDF) without native code assistance. |
|
|
|
|
|
|
|
|
|
pdf.js is not currently part of the Mozilla project, and there is no plan |
|
|
|
|
yet to integrate it into Firefox. We will explore that possibility once |
|
|
|
|
pdf.js is production ready. Until then we aim to publish a Firefox |
|
|
|
|
PDF reader extension powered by pdf.js. |
|
|
|
|
|
|
|
|
|
## Overview |
|
|
|
|
|
|
|
|
|
pdf.js is an HTML5 technology experiment that explores building a faithful |
|
|
|
|
and efficient Portable Document Format (PDF) renderer without native code |
|
|
|
|
assistance. |
|
|
|
|
|
|
|
|
|
pdf.js is community-driven and supported by Mozilla Labs. Our goal is to |
|
|
|
|
create a general-purpose, web standards-based platform for parsing and |
|
|
|
|
rendering PDFs, and eventually release a PDF reader extension powered by |
|
|
|
|
pdf.js. Integration with Firefox is a possibility if the experiment proves |
|
|
|
|
successful. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Getting started |
|
|
|
|
|
|
|
|
|
For an online demo, visit: |
|
|
|
|
|
|
|
|
|
http://andreasgal.github.com/pdf.js/web/viewer.html |
|
|
|
|
|
|
|
|
|
This demo provides an interactive interface for displaying and browsing PDFs |
|
|
|
|
using the pdf.js API. |
|
|
|
|
|
|
|
|
|
For a "hello world" example, take a look at: |
|
|
|
|
|
|
|
|
|
examples/helloworld/ |
|
|
|
|
|
|
|
|
|
This example illustrates the bare minimum ingredients for integrating pdf.js |
|
|
|
|
in a custom project. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Running the Tests |
|
|
|
|
|
|
|
|
|
pdf.js comes with browser-level regression tests that allow one to probe |
|
|
|
|
whether it's able to successfully parse PDFs, as well as compare its output |
|
|
|
|
against reference images, pixel-by-pixel. |
|
|
|
|
|
|
|
|
|
To run the tests, first configure the browser manifest file at: |
|
|
|
|
|
|
|
|
|
test/resources/browser_manifests/browser_manifest.json |
|
|
|
|
|
|
|
|
|
Sample manifests for different platforms are provided in that directory. |
|
|
|
|
|
|
|
|
|
To run all the bundled tests, type: |
|
|
|
|
|
|
|
|
|
$ make test |
|
|
|
|
|
|
|
|
|
and cross your fingers. Different types of tests are available, see the test |
|
|
|
|
manifest file at: |
|
|
|
|
|
|
|
|
|
test/test_manifest.json |
|
|
|
|
|
|
|
|
|
The test type `eq` tests whether the output images are identical to reference |
|
|
|
|
images. The test type `load` simply tests whether the file loads without |
|
|
|
|
raising any errors. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Contributing |
|
|
|
|
|
|
|
|
|
pdf.js is a community-driver project, so contributors are always welcome. |
|
|
|
|
Simply fork our repo and contribute away. A great place to start is our |
|
|
|
|
open issues. |
|
|
|
|
|
|
|
|
|
For better consistency and long-term stability, please do look around the |
|
|
|
|
code and try to follow our conventions. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Additional resources |
|
|
|
|
|
|
|
|
|
Our demo site is here: |
|
|
|
|
|
|
|
|
|
http://andreasgal.github.com/pdf.js/ |
|
|
|
|
http://andreasgal.github.com/pdf.js/web/viewer.html |
|
|
|
|
|
|
|
|
|
You can read more about pdf.js here: |
|
|
|
|
|
|
|
|
@ -19,14 +82,14 @@ You can read more about pdf.js here:
@@ -19,14 +82,14 @@ You can read more about pdf.js here:
|
|
|
|
|
|
|
|
|
|
http://blog.mozilla.com/cjones/2011/06/15/overview-of-pdf-js-guts/ |
|
|
|
|
|
|
|
|
|
follow us on twitter: @pdfjs |
|
|
|
|
Follow us on twitter: @pdfjs |
|
|
|
|
|
|
|
|
|
http://twitter.com/#!/pdfjs |
|
|
|
|
|
|
|
|
|
join our mailing list: |
|
|
|
|
Join our mailing list: |
|
|
|
|
|
|
|
|
|
dev-pdf-js@lists.mozilla.org |
|
|
|
|
|
|
|
|
|
and talk to us on IRC: |
|
|
|
|
Talk to us on IRC: |
|
|
|
|
|
|
|
|
|
#pdfjs on irc.mozilla.org |
|
|
|
|