MuPDF Build Sizes

As built on Raspberry PI 3, sizes of Mutool stripped.

The basic size for the MuPDF core is 934,144. (934K)

The maximum size it builds to is 16,702,272. (16.7Meg). The actual size lies somewhere between.

To estimate an upper bound on the size required, start with the core size, and add in various other components to customise our build.

Plotter sizes

We can tune what plotters we build into the code. Only build in the ones required for a given output colorspace (i.e. a mono printer would build in just G, a color laser might build in CMYK, or maybe CMYK + G if it wanted a fast black and white mode).

GreyScale +1,496
RGB +12,896
CMYK +6,096
N +4,840

These figures reflect the fact that we have more optimised cases for RGB and Greyscale plotters than for CMYK and N.

Document handlers

We will need at least 1 document handler:

PDF +565,976
XPS +57,600
SVG +24,752
CBZ +7,344
IMG +3,232
TIFF +3,232
HTML +291,232
EPUB +295,328
All docs 926,616

EPub and HTML share a lot of code (and both pull in the Harfbuzz library).

Font sizes

Base14 +817,808 The basic 14 fonts needed for PDF
Noto CJK +3,864,704 Basic CJK coverage from Android
Noto CJK Ext A +1,551,168 Extended CJK coverage from Android
SIL +557,744 Charis SIL font (Used for a default EPUB font)
Noto +4,452,224 Noto fonts for many languages/scripts
Noto Emoji +418,824 Noto Emoji font
Noto Historic +1,358,840 Noto fonts for Historic/Ancient scripts/languages
Noto Symbol +845,896 Noto Symbol font
All fonts 13,867,208 Total of all the above

CMAP sizes

If we are using CJK then we need another 963,192 bytes for CMAPs. (Or 1.9Meg for 'full' CMAPs).

Raw measurements

Core Size : 934144


PDF +565976
XPS +57600
SVG +24752
CBZ +7344
IMG +3232
TIFF +3232
HTML +291232
EPUB +295328
| All docs | 926616

CMaps : 963192

Base 14 : 817808 CJK : 3864704 CJK ExtA : 1551168 SIL : 557744 Noto (Basics): 4452224 Emoji : 418824 Historic : 1358840 Symbol : 845896 All fonts : 13867208

Xmas: 15193536

-- Robin Watts - 2016-05-30


This topic: MuPDF > WebHome > BuildSizes
Topic revision: r7 - 2016-06-03 - RobinWatts
This site is powered by the TWiki collaboration platform Powered by PerlCopyright 2014 Artifex Software Inc