fileformer
search⌘KtranslateENexpand_moreupload_fileConvert
Converters8 file families · 44 direct conversions
What changes in a conversionarrow_forward
home/ebook/compressor

Make a book the size of the screen it is read on.

To compress EPUB and the formats beside it, start with the screen: an e-reader shows a picture no wider than its own. Illustrations saved at camera size are resized to the reader you pick and re-encoded; leftovers from calibre, iTunes and macOS are dropped. Chapters, styling and the table of contents are copied byte for byte.

auto_storiesIllustratedmenu_bookNovelcodeFB2
a 3000 × 2000 plate on
Kindle 6″1072 × 715 · 13%
Kobo Clara 2E1264 × 843 · 18%
Kindle Paperwhite1648 × 1099 · 30%
Kindle Scribe2480 × 1653 · 68%
A 1236 × 1648 screen never shows more than 1648 pixels on the long side, even when you zoom a picture to full screen.
Kindle Paperwhite · 1236 × 1648
quality preset
Fastq30 · 1264Normalq50 · 1648Maximumq70 · 2480Ultraq85 · full
longest side of a picture
10726″ basic1264Kobo Clara1648Paperwhite2480Scribeoffkeep px
Compress picturesresize and re-encodeRemove leftoversfiles no reader opensRemove app metadatacalibre tags, FB2 indentsFB2 as .fb2.zipthe form readers open
auto_storiesthe-lamp-illustrated.epubEPUB 3 · 7 pictures · 11 MBFour plates and a map at camera size, a line drawing, an old cover no page uses, iTunes and calibre leftovers.Compress this book →
menu_bookthe-lamp.epubEPUB 3 · cover only · 55 KBThree chapters of text and a cover. Shows how little a novel has to give back.Compress this book →
codethe-lamp.fb2FictionBook 2 · 1.7 MBThe same book as one XML file, with a cover and a full-size plate stored as base64.Compress this book →
.
What the file is made of
from
downloadDownload The rebuilt book was not smaller, so there is nothing to download. A book without pictures is already as small as it gets.
Checked after compressing
Every part that changed
part · what happenedbeforeafter
~/three-books-four-presets

How much each kind of book gives back

The three sample books compressed at each preset in this browser. Each row is the new size and how much smaller it is; the bar is how much of the original is left.

Builds the three sample books here and compresses each at all four presets. Takes about a minute, since every picture is decoded and re-encoded at each preset.scienceMeasure the three books
Illustrated EPUB7 pictures at camera size
Fastq30 · 1264 px
Normalq50 · 1648 px
Maximumq70 · 2480 px
Ultraq85 · full px
Pictures are nearly the whole file, so the size of the screen decides the result.
Novel EPUBtext and one cover
Fastq30 · 1264 px
Normalq50 · 1648 px
Maximumq70 · 2480 px
Ultraq85 · full px
Only the cover can shrink. The text is already deflated inside the ZIP.
FB2 with a platepictures as base64 in the XML
Fastq30 · 1264 px
Normalq50 · 1648 px
Maximumq70 · 2480 px
Ultraq85 · full px
Base64 adds a third to every picture, so each byte saved in a picture saves 1.33 in the file.
~/all-10-formats

Where a book keeps its pictures

Each format stores pictures differently, which decides what can be done to it without touching the text.

formatwhat it ispictures live inthis pagemore
.epubEPUB 2 and 3separate image files in the ZIP, listed in the OPF manifestCompressed hereWhat is EPUB →
.azw3Kindle KF8PalmDB records after the text, one record per pictureCompressed here; record table rebuiltConvert →
.mobiKindle MOBI 6PalmDB records after the textCompressed here; record table rebuiltConvert →
.fb2FictionBook 2base64 text in <binary> elements at the end of the XMLCompressed here; optional .fb2.zipConvert →
.pdbPalm DOCno pictures; PalmDOC-compressed textRead; nothing to removeConvert →
.tcrPsion TCRno pictures; dictionary-compressed textRead; nothing to removeConvert →
.lrfSony BBeBimage objects inside LRF streamsConvert to EPUB firstConvert →
.rbRocket eBookfiles in a NUVO table of contentsConvert to EPUB firstConvert →
.snbShanda Bambookimages in an SNBP packageConvert to EPUB firstConvert →
.kfxKindle KFXIon resources, usually DRM-protectedConvert to AZW3 firstConvert →