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 Validator
- Drop one or more PDFs.
- Click "Validate".
- Read the verdict and the findings by level.
PDF Validator features
- Header, %%EOF, startxref and leading-junk checks
- Strict parse, then tolerant parse with invalid-object counting
- Page checks: MediaBox, size limits, rotation, empty pages
- Font embedding, PDF/A claim, incremental updates, JavaScript
- Accessibility hints: title, language, tagging
- qpdf strict check in WebAssembly; several files at once
PDF Validator example
A file that will not open
Input:
broken.pdfOutput:
Error: no startxref pointer · warning: strict parsing failed · info: 14 invalid objects skipped → "1 error found — try Repair PDF"Frequently asked questions about PDF Validator
Does it validate PDF/A?
No. It reports a PDF/A claim in the metadata but does not verify conformance; use a dedicated validator such as veraPDF for certification. The tool says so explicitly rather than pretend.
What is the qpdf check?
qpdf, compiled to WebAssembly, parses the file with its own strict reader and decodes every stream. "Passed" means it found no syntax or stream errors; it runs in browsers that support WebAssembly.
The file opens fine but shows warnings. Should I worry?
Warnings mean strict readers or print workflows may object (leading junk, non-embedded fonts, an odd page box). Errors mean parts of the file are unreadable — try Repair PDF.
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
Validation runs in layers: byte-level checks, pdf-lib strict parse (throwOnInvalidObject) then tolerant parse, page-level geometry, font analysis, metadata hints — and, when WebAssembly is available, qpdf --check, whose exit status and messages are reported verbatim.
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.