What Is JMuPdf?
JMuPdf is a library toolkit intended for Java developers to render Acrobat PDF documents, XPS documents, and Comic book documents (CBZ).
Some of the features include:
- Support for all non-interactive PDF 1.7 features
- High-Quality Font Engine
- Full CJK support including an Asian font
- High quality anti-aliased graphics
- Support for ARGB, ARGB_PRE, RGB, BGR, BINARY and GRAY scale rendering
- Support for Black & White (binary) rendering with optional dithering (diffusing)
- Support for encrypted documents
- Support for interactive and background printing
- Support for background rendering
- Support for image rotating, zooming and cropping
- Support for multi-threaded processing (Great for server side processing)
- Support for headless server processing
- Export pages to BMP, PNG, JPEG, PAM, PNM, and PBM files
- Export pages to single or mulit-page TIF files
- TIF compressions supported:
CCITT / LZW / Deflate / JPeg / ZLib / Packbits / Deflate - Render pages as buffered images
- Extract page text
- Extract document outline
- Extract page links
- Basic Java Swing viewer provided showing off many of the libraries features.
- Enable / disable anti-aliasing
- Set gamma correction
- Best of all...FREE...all source included.
- More to come...
Java Swing Viewer
JMuPdf provides a basic viewer application. This viewer is provided as an example of how to use JMuPdf toolkit interactively. The following options are availables as of V0.2:
- Open PDF, XPS, and CBZ documents.
- Opening encrypted PDF documents
- Intuitive page navigation
- Page zooming
- Page rotating
- Change color used when rendering to ARGB, ARGB_PRE, RGB, BGR, GRAY, or Black & White with optional dithering.
- Basic printing (This will be improved in the near future)
- Links are enabled if document contains any.
- Table of contents are linkable if document contains them.
- Use of the right mouse button to select text or extract regions as an image.
OS Environments
The toolkit is available for Windows 32/64bit and Linux 32/64bit environments.
Tested on Win XP SP2+ / Win 7 / Debian 5 and 6 / Ubuntu 10
JVM Requirements
Tested on Java 1.5, 1.6 and OpenJDK 6.
Native Rendering
JMuPdf provides a native library for Windows and Linux environments that does all the rendering. This native library is based on the original MuPDF toolkit created by Artifex Software, Inc. MuPDF is a lightweight toolkit written in portable C.
From MuPDF's website:
a lightweight PDF viewer and parser/rendering library
The renderer in MuPDF is tailored for high quality anti-aliased graphics. It renders text with metrics and spacing accurate to within fractions of a pixel for the highest fidelity in reproducing the look of a printed page on screen.
MuPDF is also small, fast, and yet complete. We support PDF 1.7 with transparency, encryption, hyperlinks, annotations, search and many other bells and whistles.
We don't support interactive features such as form filling, javascript and transitions. MuPDF is written modularly, so such features can be added on by integrators if they so desire.