MuPDF
Encyclopedia
MuPDF is an open source
software library
written in C
that implements a PDF
and XPS parsing and rendering engine. It is used primarily to render pages
into bitmap
s, but also provides support for other operations such as searching and listing the table of contents and hyperlinks.
The focus of MuPDF is on speed, small code size, and high quality anti-aliased rendering. It does not support interactive features such as form filling and javascript
.
The library ships with a rudimentary X11 and Windows viewer, and a set of command line tools for batch rendering (pdfdraw), examining the file structure (pdfshow), and rewriting files (pdfclean).
A number of free software applications use MuPDF to render PDF documents, the most notable being Sumatra PDF
. It is also available as a package for Debian
, Fedora
, FreeBSD Ports
, and OpenBSD Ports
.
Free users have ported the library to many platforms, including the
Amazon Kindle
,
HP Touchpad
,
PlayStation Portable
,
Wii
, and
DOS
.
rendering library by Raph Levien
. After Artifex Software acquired the MuPDF project, the development focus shifted on writing a new modern graphics library called Fitz. Fitz was originally intended as an R&D project to replace the aging Ghostscript graphics library, but has instead become the rendering engine powering MuPDF.
In 2005, the first version of MuPDF with the new Fitz library was released.
In 2009, Artifex Software filed a copyright infringement lawsuit against Palm, Inc.
for violating the GPL when it included MuPDF in webOS.
In 2011, support for Microsoft
's XPS was added, based on code from the GhostXPS
library.
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
software library
Library (computer science)
In computer science, a library is a collection of resources used to develop software. These may include pre-written code and subroutines, classes, values or type specifications....
written in C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
that implements a PDF
Portable Document Format
Portable Document Format is an open standard for document exchange. This file format, created by Adobe Systems in 1993, is used for representing documents in a manner independent of application software, hardware, and operating systems....
and XPS parsing and rendering engine. It is used primarily to render pages
Rendering (computer graphics)
Rendering is the process of generating an image from a model , by means of computer programs. A scene file contains objects in a strictly defined language or data structure; it would contain geometry, viewpoint, texture, lighting, and shading information as a description of the virtual scene...
into bitmap
Bitmap
In computer graphics, a bitmap or pixmap is a type of memory organization or image file format used to store digital images. The term bitmap comes from the computer programming terminology, meaning just a map of bits, a spatially mapped array of bits. Now, along with pixmap, it commonly refers to...
s, but also provides support for other operations such as searching and listing the table of contents and hyperlinks.
The focus of MuPDF is on speed, small code size, and high quality anti-aliased rendering. It does not support interactive features such as form filling and javascript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....
.
The library ships with a rudimentary X11 and Windows viewer, and a set of command line tools for batch rendering (pdfdraw), examining the file structure (pdfshow), and rewriting files (pdfclean).
A number of free software applications use MuPDF to render PDF documents, the most notable being Sumatra PDF
Sumatra PDF
Sumatra PDF, also known simply as Sumatra, is a free, open source, lightweight PDF, DjVu, XPS, CBZ and CBR reader for Microsoft Windows, written by Krzysztof Kowalczyk....
. It is also available as a package for Debian
Debian
Debian is a computer operating system composed of software packages released as free and open source software primarily under the GNU General Public License along with other free software licenses. Debian GNU/Linux, which includes the GNU OS tools and Linux kernel, is a popular and influential...
, Fedora
Fedora (operating system)
Fedora is a RPM-based, general purpose collection of software, including an operating system based on the Linux kernel, developed by the community-supported Fedora Project and sponsored by Red Hat...
, FreeBSD Ports
FreeBSD Ports
The FreeBSD Ports collection is a package management system for the FreeBSD operating system, providing an easy and consistent way of installing software packages. As of October 2011, there are over 22,700 ports available in the collection...
, and OpenBSD Ports
Ports collection
Ports collections are the sets of makefiles and patches provided by the BSD-based operating systems, FreeBSD, NetBSD, and OpenBSD, as a simple method of installing software or creating binary packages...
.
Free users have ported the library to many platforms, including the
Amazon Kindle
Amazon Kindle
The Amazon Kindle is an e-book reader developed by Amazon.com subsidiary Lab126 which uses wireless connectivity to enable users to shop for, download, browse, and read e-books, newspapers, magazines, blogs, and other digital media...
,
HP Touchpad
HP TouchPad
The HP TouchPad is a tablet computer which was developed and designed by Hewlett-Packard. The HP TouchPad was launched on July 1, 2011, in the United States; July 15 in Canada, United Kingdom, France, Germany; and August 15 in Australia....
,
PlayStation Portable
PlayStation Portable
The is a handheld game console manufactured and marketed by Sony Corporation Development of the console was announced during E3 2003, and it was unveiled on , 2004, at a Sony press conference before E3 2004...
,
Wii
Wii
The Wii is a home video game console released by Nintendo on November 19, 2006. As a seventh-generation console, the Wii primarily competes with Microsoft's Xbox 360 and Sony's PlayStation 3. Nintendo states that its console targets a broader demographic than that of the two others...
, and
DOS
DOS
DOS, short for "Disk Operating System", is an acronym for several closely related operating systems that dominated the IBM PC compatible market between 1981 and 1995, or until about 2000 if one includes the partially DOS-based Microsoft Windows versions 95, 98, and Millennium Edition.Related...
.
History
In 2002 Tor Andersson started work on MuPDF based on the LibartLibart
Libart is a free software graphics library with a vector-based API. Cairo obsoletes almost all uses of Libart.- Notable usage :* GNOME Canvas uses Libart as its rendering API.* GIMP uses Libart for vector rendering....
rendering library by Raph Levien
Raph Levien
Raphael Levien is an influential member of the free software developer community, through his creation of the Advogato virtual community and his work with the free software branch of Ghostscript. He is currently employed by Google...
. After Artifex Software acquired the MuPDF project, the development focus shifted on writing a new modern graphics library called Fitz. Fitz was originally intended as an R&D project to replace the aging Ghostscript graphics library, but has instead become the rendering engine powering MuPDF.
In 2005, the first version of MuPDF with the new Fitz library was released.
In 2009, Artifex Software filed a copyright infringement lawsuit against Palm, Inc.
Palm, Inc.
Palm, Inc., was a smartphone manufacturer headquartered in Sunnyvale, California, that was responsible for products such as the Pre and Pixi as well as the Treo and Centro smartphones. Previous product lines include the PalmPilot, Palm III, Palm V, Palm VII, Zire and Tungsten. While their older...
for violating the GPL when it included MuPDF in webOS.
In 2011, support for Microsoft
Microsoft
Microsoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
's XPS was added, based on code from the GhostXPS
Ghostscript
Ghostscript is a suite of software based on an interpreter for Adobe Systems' PostScript and Portable Document Format page description languages.- Features :...
library.