+ [Development Version](http://mozilla.github.io/pdf.js/extensions/firefox/pdf.js.xpi) - This version is updated every time new code is merged into the PDF.js codebase. This should be quite stable but still might break from time to time.
+ Development Version: http://mozilla.github.io/pdf.js/extensions/firefox/pdf.js.xpi
+ [Stable Version](https://addons.mozilla.org/firefox/addon/pdfjs) - After version 24 of Firefox is released we no longer plan to support the stable extension. The stable version will then be considered whatever is built into Firefox.
The development extension should be quite stable but still might break from time to time.
#### Chrome
Also, note that the development extension is updated on every merge and by default Firefox will
The Chrome extension is still somewhat experimental but it can be installed two
auto-update extensions on a daily basis (you can change this through the
ways:
`extensions.update.interval` option in `about:config`).
For an experimental Chrome extension, get the code as explained below and issue `node make extension`.
+ [Unofficial Version](https://chrome.google.com/webstore/detail/pdf-viewer/oemmndcbldboiebfnladdacbdfmadadm) - *This extension is maintained by a PDF.js contributor.*
Then open Chrome, go to `Tools > Extension` and load the (unpackaged) extension
+ Build Your Own - Get the code as explained below and issue `node make extension`. Then open
from the directory `build/chrome`.
Chrome, go to `Tools > Extension` and load the (unpackaged) extension from the
directory `build/chrome`.
### Getting the code
## Getting the Code
To get a local copy of the current code, clone it using git:
To get a local copy of the current code, clone it using git:
@ -51,7 +58,8 @@ PDF files for a file:// url:
$ node make server
$ node make server
You can install Node via [nvm](https://github.com/creationix/nvm) or the
You can install Node via [nvm](https://github.com/creationix/nvm) or the
[official package](http://nodejs.org). If everything worked out, you can now serve
[official package](http://nodejs.org). If everything worked out, you can now
serve
+ http://localhost:8888/web/viewer.html
+ http://localhost:8888/web/viewer.html
@ -59,18 +67,22 @@ You can also view all the test pdf files on the right side serving
+ http://localhost:8888/test/pdfs/?frame
+ http://localhost:8888/test/pdfs/?frame
### Building pdf.js.
## Building PDF.js
In order to bundle all `src/` files into a final `pdf.js` and build the generic viewer, issue:
In order to bundle all `src/` files into a final `pdf.js` and build the generic
viewer, issue:
$ node make generic
$ node make generic
This will generate the file `build/generic/build/pdf.js` that can be included in your final project. The pdf.js file is large and should be minified for production. Also, if you would like to support more browsers than firefox you'll also need to include `compatibility.js` from `build/generic/web/`.
This will generate the file `build/generic/build/pdf.js` that can be included in
your final project. The pdf.js file is large and should be minified for
production. Also, if you would like to support more browsers than Firefox you'll
also need to include `compatibility.js` from `build/generic/web/`.
## Learning
# Learning
You can play with the PDF.js API directly from your browser through the live
demos below:
You can play with the PDF.js API directly from your browser through the live demos below: