a lightweight PDF and XPS viewer
The 1.2 release is here! This version adds significant new functionality, improved stability and performance improvements.
API improvements and changes:
The 1.1 release is here!
The 1.1 release is almost here! This version is mainly a stability and bug fix release.
The command line tools have been combined into one tool that does all: mubusy. Where previously you would have called "mupdfclean blah blah blah", now call "mubusy clean blah blah blah" instead.
The 1.0 release is here!
The 1.0 release rapidly approaches! This version brings with it a whole host of features, including:
This is such a large and significant version that we're doing a release candidate first to allow us to correct any obvious bugs that are found. Please try it and let us know how you get on!
You can now use MuPDF on the iPad and iPhone! You'll need iOS 5.0 or later.
This is a bug fix and stability release. No new features to report.
There is experimental support for Isolated and Knockout transparency groups, that can be enabled if you compile from source.
The Open XML Paper Specification is a page description language developed by Microsoft. XPS is used extensively in the Vista and Windows 7 printing pipeline. The XPS Document Writer is a virtual printer that works like Acrobat distiller, but is integrated in Windows and creates XPS documents.
We now proudly announce that MuPDF can read these XPS documents!
Other notable improvements:
We have changed the version control system used for MuPDF from darcs to git. The old darcs repository has been converted to git. This new git repository is not compatible with the old experimental git mirror.
This is a minor bug fix release to fix an issue where text was copied from a different place than the selected area.
We have improved the image scaling code. We now use an algorithm based on a Graphics Gem when downscaling images, and simple bilinear interpolation when magnifying images. The results are vastly improved legibility of documents which use images containing text. This includes documents created by scanning or photographing a physical document, but also many academic papers using type 3 bitmap fonts, such as those created by old versions of LaTeX.
MuPDF will now display PDF annotations when rendering a page.
Transparency support for blend modes and in particular soft masks has been improved, along with many bug fixes, improved conformance, and optimizations to the colorspace and function parsing code.
We can now read PDF documents using 256-bit encryption (AESv3).
The CMap data structures have been squeezed to reduce the memory footprint of the character map tables by about 500K. The CJK fallback font has also been updated to a newer version with more characters.
MuPDF has a new logo!
We have finally implemented transparency blend modes and soft masks in the renderer. This support is still a experimental, but works for the most common cases.
A grayscale mode renderer has been added. Pdfdraw can output grayscale images with the -g flag. The mupdf viewer application will switch between grayscale and color rendering if you press the 'c' key.
The heuristics for text extraction have been tweaked. Search and copying should now detect word separation and line breaks more reliably.
The internal paint functions in the renderer have been rewritten as part of adding transparency support, and should now be a lot simpler and have fewer variants. Likewise the compression and stream filter architecture finally got the cleaning up it has been in need of for a long time.
This version has undergone a significant rewrite of the renderer. We are no longer tied to a display tree architecture. The PDF parser calls a device interface with all the graphics objects it sees. There are a few different devices implemented: the draw device which renders the objects to an image, the text device which extracts the textual content, and a display list device which simply records all the objects for playback to another device at another time.
The old build system that used Jam has been replaced with GNU Makefiles. We have packaged up all third party libraries into a zip file. If you unzip this package in the source directory, the makefile will pick them up and build them as part of MuPDF. This makes it a lot easier to build on windows and on other systems where you haven't installed all of the libraries that MuPDF depends on.
We also added a Microsoft Visual Studio project file.