qpdf.wasm
A WebAssembly port of the highly regarded QPDF C++ library, specifically designed to perform structural transformations and inspections of PDF files directly inside the browser.
Fix corrupt or broken PDF files instantly. Uses WASM-powered recovery pipelines to reconstruct broken cross-reference tables.
Repair PDF is a free, browser-based tool from UseToolSuite's Document & PDF Tools collection. All processing happens locally on your device — your data is never uploaded to any server. Use the tool below, then scroll down for detailed documentation, frequently asked questions, and related resources.
Drop corrupted PDF file here
Files are repaired securely using local WASM recovery pipelines.
The cross-reference table and streams have been rebuilt.
Select the corrupted PDF file that triggers "EOF Exception" or "Invalid Stream" errors in standard viewers.
The WASM port of QPDF forcefully traverses the corrupted binary stream, locating intact object dictionaries.
The engine rebuilds the missing XREF tables, salvages the surviving objects, and generates a structurally compliant PDF.
Click to rate
Sorry it didn't meet your expectations. We're always looking to make these tools better. What was missing or broken?
Open GitHub IssueEssential terms and definitions related to Repair PDF.
A WebAssembly port of the highly regarded QPDF C++ library, specifically designed to perform structural transformations and inspections of PDF files directly inside the browser.
The critical index located at the tail of a PDF file mapping every internal object to its exact byte offset, allowing for random access reading.
A brute-force recovery method utilized when the XREF is destroyed, where the parser evaluates every single byte from start to finish searching for valid PDF object signatures.
Under normal circumstances, PDF readers rely on a cross-reference (XREF) table at the end of the file to locate objects. If this table is destroyed, the WASM engine switches to a brute-force linear scan, mapping out every `obj` and `endobj` tag it can find to manually reconstruct the tree.
Only if the pages are "orphaned" rather than deleted. If a page object exists in the binary stream but was disconnected from the main page tree due to corruption, the repair tool will re-link it. It cannot recover data that was physically overwritten.
To enforce structural compliance, the QPDF engine rewrites the internal object hierarchy and strips severely malformed instructions that violate the ISO 32000-1 standard, which may result in minor layout shifts.
Common errors developers encounter and how to resolve them.
Handling Encrypted Corrupt Streams The repair engine cannot easily reconstruct encrypted data blocks because the linear object scanning relies on plain-text PDF markers. You must supply the user password to allow the engine to attempt decryption prior to structural repair.
Total File Annihilation (Unrecoverable) If the binary data was completely zeroed out by a failing hard drive (e.g., viewing the file in a hex editor shows nothing but 0x00), the file contains no surviving objects and is fundamentally unrecoverable by any algorithm.
In-depth articles covering the concepts behind Repair PDF.