What is inside a PDF file, and what does repairing one do?
A PDF is a header naming its version, a body of numbered objects (pages, fonts, images, streams), a cross-reference table that records where each object starts, and a trailer pointing at the catalogue and the metadata. Metadata lives in the Info dictionary (title, author, dates, producer) and, since PDF 1.4, in an XMP stream; fonts are embedded whole, subsetted or only referenced by name. A viewer that cannot find an object walks the file to rebuild the cross-reference table — repair does the same and writes the rebuilt table, which fixes most "damaged file" errors without touching the pages.
How to use PDF Size Analyzer
- Drop a PDF.
- Click "Analyze size".
- Read the breakdown and follow the advice (Compress PDF, Cleanup…).
PDF Size Analyzer features
- Bytes by category: images, fonts, page content, XMP, embedded files, structure…
- The 15 largest objects with type and page hints
- Measured saving of a lossless rewrite
- Concrete advice on what to do next
- Read-only — the file is not modified
- Local processing
PDF Size Analyzer example
Why is this 60 MB?
Input:
presentation.pdfOutput:
Images 52.1 MB (87%) · Fonts 3.4 MB · Page content 1.1 MB · structure 0.6 MB; largest: image 1 380 0 R 9.8 MB (page 4); advice: images dominate — compress with image recompressionFrequently asked questions about PDF Size Analyzer
What usually makes a PDF large?
Images — especially scans stored at 300–600 DPI in colour — followed by embedded fonts (several full fonts, or the same font embedded many times), then incremental updates that keep old versions of edited objects.
What is "structure & overhead"?
Bytes not inside any stream: object headers, dictionaries, cross-reference tables and whitespace. A rewrite with object streams reduces it.
Does the analysis change my file?
No. It only reads the file; the rewrite estimate is computed in memory and discarded.
Is my PDF uploaded to a server?
No. The file is opened and processed by your browser with WebAssembly and JavaScript; nothing is sent to Mutqan Soft or anyone else. Close the tab and the file is gone. Downloading the result needs a free account — no subscription, no payment.
Can I use it on a password-protected PDF?
Yes, if you know the password: the file list asks for it once and every operation then works on the decrypted pages. The output is saved without a password unless you protect it again.
Technical notes
Every stream object is classified by its dictionary (/Type, /Subtype, /Filter, font program keys, ICC and shading markers) and its encoded length summed. A dry re-save with object streams measures the structural saving without producing a file.
References
- ISO 32000-2:2020 — Document management — Portable document format — Part 2: PDF 2.0The current PDF standard: file structure, objects, pages, fonts, annotations, forms and encryption.
- PDF Reference — ISO 32000-1:2008 (PDF 1.7), Adobe copyThe freely readable PDF 1.7 specification: page trees, content streams, metadata, permissions and the standard security handler.
- PDF.jsThe open-source PDF renderer that draws PDF pages in the browser without a plugin — how documents are previewed locally.