List of changes in MuPDF 1.9

* Headline changes:
	* New command line tools: create and run.
	* New low-level Java interface for desktop and android.
	* Bidirectional layout for Arabic and Hebrew scripts.
	* Shaping complex scripts for EPUB text layout.
	* Noto fallback fonts for EPUB layout.

* mutool create
	Create new PDF files from scratch.
	Read an annotated content stream in a text file and write a PDF file,
	automatically embedding font and image resources.

* mutool run
	Run javascript scripts with MuPDF bindings.
	The interface is similar to the new Java interface.

* mutool draw
	Optional multi-threaded operation (Windows and pthreads).
	Optional low memory mode (primarily for testing).

List of changes in MuPDF 1.8

* Headline changes:
	* New OpenGL-based barebones desktop viewer.
	* New URW fonts with greek and cyrillic.
	* 64-bit file support.
	* Ghostscript proofing mode (source only; not in shipped binaries).

* EPUB improvements:
	* User style sheets.
	* GIF images (also for CBZ).
	* Table of contents.
	* CJK text.
	* Page margins.
	* Many bug fixes.

* Bug fixes:
	* Updated FreeType to version 2.6.1.
	* Various font substitution bug fixes.
	* Fix setjmp/longjmp behaviour which could cause optimizing compilers to misbehave.

List of changes in MuPDF 1.7a

* Bugfixes
	* Fixed bug that allocated too much memory when packing paths.
	* Fixed EPUB font scaling bug.
	* Fixed EPUB file type handling in viewers.
	* Improved tolerance for broken and unsupported CSS.

* Features
	* Added mudraw -z option to compress output streams.

List of changes in MuPDF 1.7

* Headline changes:
	* New 'Indie dev' licensing options - contact sales@artifex.com for more details.
	* New HTML layout engine, and (DRM-free) EPUB viewer.
	* Reduced memory usage - displaylists and internal PDF representation take much less memory, reducing total memory use on some files by over 60%.

* Important API changes:
	* Bound contexts have been removed; we now pass fz_contexts explicitly.
	* Reference counting of paths and text structures.

* Features:
	* Add mutool pages option.
	* Tweaked rendering to prevent feature dropout in common cases.
	* Viewer tweaks
		* Better mouse wheel handling
		* Shift-space support
		* Mouse button control of presentation mode

* Internal changes:
	* Removal of bound contexts; fz_contexts now passed explicitly everywhere.
	* PDF filter revamp - simpler interface.
	* Devices use derived structures rather than user pointer.
	* Sparse PDF xrefs held in more compact form.
	* New gsview viewer split out to its own repository.

* Bug fixes
	* Improved handling of broken files.
	* Fix BBoxes of Type 3 fonts.
	* Updated fonts (including greek and cyrillic).
	* Various memory leaks and crashes.
	* And many more.


List of changes in MuPDF 1.6

* Features:
	* Color detection device (mudraw -T).
	* Sepia mode full-page color tinting in X11 and win32 viewer (keybinding: shift-C).
	* Re-implement printf and strtod due to portability issue with locales and number formatting.
	* Add 'gsview' project: a Windows Modern UI viewer.
	* Improve XML parser interface.
* Bug fixes:
	* CBZ page ordering
	* ZIP64 support
	* iOS and Android bug fixes
	* Miscellaneous minor fixes


List of changes in MuPDF 1.5

* Bug fixes.


List of changes in MuPDF 1.4

* Headline changes:
	* CMYK rendering (mudraw PWG and PAM formats)
	* TIFF viewer (with multi-page support).
	* Added MuJS Javascript interpreter.
		* MuJS is the default, V8 and JavaScriptCore are compile time options.
		* Javascript support has to be explicitly enabled with pdf_enable_js.
		* All viewers now have JavaScript enabled in the default builds.
* Viewers:
	* X11: Horizontal scroll wheel support.
	* X11: Status bar display with warnings.
	* Android: Digital signatures.
	* iOS: Links, form filling, annotation editing, and javascript.
	* iOS: Reflow mode.
	* WinRT: Printing.
	* WinRT: Improved zooming behaviour.
* Tools:
	* mudraw: Banded rendering with -B /band-height/.
	* mudraw: Select output format with -F /format/.
	* mudraw: Write to stdout if you use '-' as the output file name.
	* mudraw: Add TGA output format.
	* mudraw: Improved SVG output.
	* mutool show: Write output to file instead of stdout with -o /filename/.
	* mutool clean: Clean content streams with -s option.
* Annotations:
	* Improved font handling.
	* Form fields.
	* Free text.
	* Sticky notes.
* Optimizations:
	* glyph cache: Partial eviction.
	* glyph cache: Run-length compressed glyphs.
	* Smarter handling of subpixel metrics in text rendering.
	* Optimized blitting functions.
	* Optimized gradient mesh drawing.
* API changes and additions:
	* fz_stream API reworked: replace "read" function with "next".
	* "Rebind" functions to associate context bound objects with another context:
		fz_output, fz_stream, fz_device and fz_document.
	* Introduce "document handlers" to detect and open different file types.
		* Must now call fz_register_document_handlers() to register the defaults.
		* May register your own handlers as well to work with fz_open_document.
	* Hook to load system fonts: fz_install_load_system_font_funcs.
	* PDF xref cache flushing functions (mark/clear/clear-to-mark).
	* Add our own "printf" set of functions to format strings and write to fz_output:
		* Format %f as short as possible while preserving precision.
		* Has %C for formatting a unicode character as UTF-8.
		* Has %M to format fz_matrix.
		* Has %R to format fz_rect.
		* Has %q and %( to format strings with escaped characters.
	* PDF process interface: allow PDF interpreter to do more than just draw!
		* Content stream state cleaning filter.
		* Content stream rewriting filter.
	* PDF digital signatures.
	* Stroke states may now be stored on the stack.
	* Improved fz_path internals.
	* Gradient mesh drawing interface has been improved.
	* Save files with incremental updates.


List of changes in MuPDF 1.3

 * Windows RT viewer app for MuPDF.
 * Library changes to support progressive loading (display PDF files as
   they download). Windows/Linux/MacOS viewer supports this using curl.
 * Incremental updates to PDF files are now (optionally) preserved on
   loading/saving.
 * Prototype support for checking PDF Digital Signatures.
 * Initial annotation support (strike-out, underline, highlight and ink)
   (library and android builds only).
 * Fix operation on Android API level 8.
 * Android redraw optimisations.
 * Android app now supports Google Cloud Print.
 * Android app translated into many languages.
 * Android support for more architectures.
 * Improvements to store (avoid collisions causing unnecessary evictions).
 * Windows apps use Unicode filenames now.
 * PDF function handling improved; functions can now be passed to devices
   without 'sampling'.
 * PDF image handling improved; images can now be passed to devices
   without decompression.
 * Indexed images are no longer uncompressed at load time, saving memory.
 * Caching of rendered tiles for speed.
 * Improved text analysis mode, capable of spotting columns/indents,
   right-to-left text etc.
 * HTML output mode now includes image output.
 * PDF password encoding handling improved.
 * MuPDF now opens Jpeg, Tiff and PNG files directly.
 * Bug preventing OpenXPS files from being opened fixed.
 * Initial (feature incomplete) SVG and PDF output devices.
 * PWG raster (mono/grey/RGB) and PCL (mono) output devices.
 * Various performance improvements (including tilings and mesh based
   shadings).
 * Revamped directory structure to reflect recent changes.
 * Various potential SEGV, SoftMask and rendering fixes.
 * Many potential crashes in Jpeg2000 and JBIG2 images fixed.


List of changes in MuPDF 1.2

 * Important API changes:
    * fz_bbox is now fz_irect.
    * APIs (including fz_device) now pass fz_rect/fz_matrix by reference.
    * fz_device API is now more consistent with regards to use of
      fz_rect rather than fz_bbox.
 * Add support for Javascript and forms handling.
 * Fix many SEGVs with out of spec files. Many thanks to Mateusz "j00ru"
   Jurczyk and Gynvael Coldwind of the Google Security team, zeniko,
   Sebastian Rasmussen and all other contributors.
 * Add fz_open_document_with_stream to allow non-file based operation.
 * Move to using git submodules for third party libraries.
 * Much enhanced Android application. Now on Google Play!
 * Oversized and stroke text clipping implemented.
 * Change shadings to decompose at render times; massive memory savings.
 * Renamed 'mubusy' to 'mutool'.
 * PDF 1.7 Extension Level 8 encryption implemented.
 * Added consts to various parts of the API to help C++ interworking.
 * Prototype transition support.
 * Text searching API moved to fitz.
 * Highlight and copy text selections.
 * Performance enhancements for color conversion and fax decompression.
 * ARM optimisations for color conversion and bitmap scaling.
 * Bitmap subsampling stage introduced, with ARM optimisations.
 * Type 3 fonts; glyphs are now handled as display lists.
 * Scan converter performance improvements.
 * Various rendering fixes.


List of changes in MuPDF 1.1

 * Rendering bugs fixed (text clipping, stroked text etc).
 * Better handling of 'large' (uncachable) glyphs.
 * Added a delete button to the library view on the iOS port.
 * Minor speed optimisations.
 * Shading bug fixes.
 * Move to using dynamically allocated parsing buffers (more resilient).
 * Support for UserUnits.
 * Fix bugs with image predictors (including with 16 bit images).
 * More resilient to out of spec files.
 * Extract pdf writing capability into the library from pdfclean, and
   expand on it to allow for linearisation. Bug fixes in the garbage
   collection of unused objects.
 * Improve pdf writing recognition of images.
 * Improved font matching.
 * Start to move away from macros to inline functions (helpful for
   applications requiring certification).
 * Many bugs fixed.
