sparkleOur fast and customizable PDF WebViewer is here.
Try It Nowchevron-rightcross
Background gradient

The MuPDF Source Code

The foundation of everything we build, written in C. MuPDF’s C library is fast, lightweight, and portable. It powers high-performance PDF rendering, extraction, conversion, redaction, signing and more. Built for full control and maximum efficiency.

MuPDF logos and code

What makes MuPDF Core different?

High-Performance Applications

High-Performance Applications

At its smallest, just 2MB, MuPDF will never weigh your project down. Our library can be built in different configurations, depending on your needs. And our continuous benchmark testing ensures the highest quality performance.

High-Fidelity Rendering

High-Fidelity Rendering

MuPDF renders text with metrics and spacing accurate to within fractions of a pixel, delivering the highest possible fidelity for reproducing the look of a printed page on a screen.

Multi-Format Support & Language Bindings

Multi-Format Support & Language Bindings

Supports multiple document formats including PDF, XPS, EPUB, SVG, and more. Built in C for maximum performance, with bindings for JavaScript, .NET, Python, and Java.

Download MuPDF Core

Command Line Tools with mutool

The command line tools gives users access to many of the commonly used and useful commands for rendering, converting and manipulation.

mutool run

If you can imagine it, mutool run can handle it. The mutool run command executes a JavaScript program which has access to the complete MuPDF library. Mutool run scripts have access to the same classes and methods as the Java bindings, so if you are familiar with one, you can easily pick up the other.

mutool extract

Extract images and embedded font resources from PDF files. This is useful when you want to reuse images or fonts embedded into PDFs elsewhere, or when trying to understand why a PDF is not rendered as expected.

mutool trace

This is a debugging tool used for showing a trace of the calls done to a graphics device when rendering a document. This can help interfacing a custom output graphics device with MuPDF or when trying to understand why a PDF is not rendered as expected.

mutool show

A tool for displaying the internal objects in a PDF file. Together with the PDF specification this debugging tool can aid in understanding problematic PDF files that are not rendered as expected.

mutool clean

A workhorse of a tool that can rewrite the syntax of a PDF file, repair broken files, expand compressed streams, filter out a range of pages, or make a PDF file editable, and more!

mutool create

The create command creates a new PDF file with the contents created from one or more input files containing graphics commands.

mutool convert

An easy to use tool for converting documents from one format to another.

mutool merge

Merge pages from multiple files into a new PDF document.

mutool draw

A highly customizable tool that renders documents to image files, converts to other vector formats, or extracts text content.

mutool poster

Tile a large PDF page into several smaller pages, to allow you to print large posters on a regular printer.

mutool sign

Reads an input PDF file and by default prints information about each signature field object.

mutool info

Show info about the objects on pages in an input file. For each page the page object number is shown, and then detailed information about the desired objects.

See Documentation

MuPDF Core Resources

Quick Start Guide

Quick Start Guide

Jump into our docs and get started.

See Docs
Find us on Github

Find us on Github

Check out our ongoing development.

Visit Github
MuPDF

Try MuPDF Today

Start building with the fastest, most flexible PDF library.

Download MuPDF