Repair Corrupt PDF

Rebuild damaged cross-reference tables and corrupt PDF objects.

100% Client-Side • 100% Free

Select corrupted PDF to repair

or drag and drop your damaged PDF file here

100% Client-Side Privacy: Your PDF never leaves your device.
In-Depth Technical Guide•8 min read•2RUN Engineering Team
100% Client-Side • Zero Upload

The Authoritative Guide to Repairing Corrupted & Damaged PDF Files In-Browser

⚡How to Repair a Corrupted PDF Document In-Browser

1

1. Import Your Corrupted PDF File

Drag and drop your damaged or unreadable PDF into the recovery workspace, or click Browse to select it from your local drive.

2

2. Execute Heuristic Byte Recovery

Our client-side engine bypasses broken XRef tables, scans raw indirect objects, and recalculates stream boundaries.

3

3. Rebuild Document Catalog & Pages

The recovery algorithm reconstructs the /Pages tree, resolves orphaned objects, and generates a brand-new cross-reference table.

4

4. Download Repaired PDF

Save your restored, error-free document immediately to your device with zero cloud processing or wait times.

Encountering a corrupted PDF file—prompting fatal reader error messages like 'The file is damaged and could not be opened', 'Format error: not a PDF or corrupted', or 'An error occurred while processing a page'—is an acute operational crisis. Documents become corrupted due to interrupted network downloads, incomplete cloud file synchronizations, abrupt system reboots during saving, faulty email gateways that mangle binary byte streams, or storage drive sector corruption. When the corrupted file is an un-backed-up legal brief, an irreplaceable tax record, or a critical engineering drawing, users face catastrophic data loss.

However, in the vast majority of 'corrupted' PDFs, the underlying page content, text streams, and embedded images remain completely intact. The file simply fails to open because its indexing metadata—such as the cross-reference table (XRef), file trailer dictionary, or byte offset pointers—has been truncated, offset by line-ending conversions (CRLF vs. LF), or malformed.

Our client-side Repair PDF tool performs advanced heuristic byte reconstruction directly inside your web browser. By bypassing broken XRef tables, scanning for raw indirect objects, rebuilding the document catalog, and synthesizing a brand-new cross-reference table using WebAssembly, you can recover corrupted files in seconds—with 100% client-side privacy and zero cloud uploads.

Read the full technical guide

Root Causes of PDF Corruption: Truncation, Offset Drift, and Corrupt XRefs

Under the ISO 32000 specification, a PDF is not read sequentially from start to finish like a text file. Instead, conforming PDF viewers start by reading the very end of the file, locating the startxref token, and reading the cross-reference (XRef) table, which maps every indirect object number to its exact physical byte offset from the start of the file.

Most corruption incidents stem from failures in this indexing system:

1. Truncated Files: If a download terminates at 95% completion, the file trailer (%%EOF) and XRef table at the end of the byte stream are completely missing. Standard viewers fail immediately because they cannot locate the root Catalog.

2. Byte Offset Drift: If a PDF is transmitted via an email server or FTP client that incorrectly treats binary data as ASCII text, line endings can be converted from UNIX (LF) to Windows (CRLF). Inserting an extra byte (0x0D) at every newline shifts all subsequent byte positions, causing every single pointer in the XRef table to point to invalid data.

3. Malformed Trailers: Software crashes during saving often leave the trailer dictionary unclosed or leave circular object references.

Heuristic Object Scanning: Reconstructing the Object Pool Independent of XRefs

When the cross-reference table is corrupted or missing, a professional repair engine must abandon the XRef table entirely and perform linear heuristic byte scanning across the entire file payload.

Our client-side recovery engine scans the raw ArrayBuffer for the regular expression pattern '\d+\s+\d+\s+obj', identifying the physical byte offset of every indirect object header. It reads the object number and generation number, and parses the object dictionary or stream up to the matching 'endobj' token.

Through this linear scan, the engine reconstructs an in-memory inventory of every surviving dictionary, page, image XObject, font, and content stream, completely restoring access to the document's contents regardless of how badly the original XRef table was damaged.

Rebuilding the Document Catalog (/Root) and /Pages Tree Hierarchy

Once all raw objects are inventoried in memory, the repair engine must establish the logical document hierarchy. It searches the object pool for a dictionary containing '/Type /Catalog' (or a dictionary containing '/Pages').

If the original Catalog object is damaged or truncated, our engine synthesizes a brand-new Catalog dictionary. It traverses all objects with '/Type /Page', resolves their respective /MediaBox and /Contents references, and constructs a balanced /Pages tree.

If certain page dictionaries are missing their /Parent references or have orphaned content streams, the engine re-attaches them into a linear page sequence, restoring as many readable pages as physically possible from the surviving data.

Stream Length Recalculation and FlateDecode Decompression Recovery

Another frequent cause of fatal parsing errors is incorrect stream length declarations. Every stream object in PDF specifies its byte size via the /Length key. If offset drift or transmission truncation alters the stream length, viewers either stop reading prematurely or throw a stream decompression error.

Our repair engine inspects every stream object between 'stream' and 'endstream' markers. It recalculates the exact physical byte length, tests the stream against FlateDecode (Zlib) decompression, fixes malformed stream boundaries, and updates the /Length key accordingly. Corrupted vector graphics and text streams are recovered cleanly.

Synthesizing Clean XRef Tables and Standard End-of-File Markers (%%EOF)

The final phase of client-side PDF repair is re-serialization. The engine assembles all recovered objects into a clean binary sequence, calculates exact byte offsets for each object from byte zero, and generates a brand-new, perfectly indexed cross-reference table (XRef).

It appends a standard trailer dictionary pointing to the verified Catalog object, writes the 'startxref' offset pointer, and terminates the file with the official '%%EOF' marker. The resulting document is a fully compliant, healthy ISO 32000 PDF file that opens smoothly in Adobe Acrobat, Chrome, Apple Preview, and mobile viewers with zero error prompts.

Air-Gapped Privacy for Recovering Privileged and Confidential Files

Corrupted documents frequently contain an organization's most critical un-backed-up records: confidential legal evidence, tax returns, medical scans, or corporate financial models. Uploading corrupted files to commercial third-party repair services exposes privileged communications and trade secrets to unauthorized server retention and potential data breaches.

2run.tools guarantees absolute client-side privacy. The entire byte scanning, object recovery, and XRef reconstruction pipeline executes 100% locally inside your browser's WebAssembly memory sandbox. Your document never leaves your machine, ensuring complete enterprise confidentiality and full compliance with GDPR, HIPAA, and legal privilege rules.

Forensic Byte Carving: Salvaging Images, Text Blocks, and Fonts from Severely Damaged Files

In worst-case scenarios where a storage drive suffers severe hardware failure or a file transfer is cut off midway, critical portions of the PDF structure may be irrevocably missing. In such cases, standard document reconstruction cannot restore the complete page hierarchy.

Our engine incorporates advanced forensic byte carving algorithms. It scans the raw byte stream for known binary signatures, including JPEG markers (\xFF\xD8\xFF to \xFF\xD9), PNG headers (\x89PNG), TrueType font tables (\x00\x01\x00\x00), and compressed FlateDecode streams.

By carving out and reconstructing these isolated asset streams, our tool allows users to recover vital evidentiary photographs, embedded receipts, and raw textual paragraphs even from files that other PDF software declare completely unrecoverable and permanently lost.

💡Pro Tips for PDF File Recovery and Repair

  • •If a downloaded file fails to open, try re-downloading it first; if the original source is unavailable, use this tool to recover surviving data.
  • •Always keep the original corrupted file as a backup until you have verified that all necessary pages are present in the repaired version.
  • •Open the repaired PDF in Adobe Acrobat or Chrome to verify that all images, fonts, and vector illustrations display correctly.
  • •If only a subset of pages could be recovered due to severe truncation, use our Extract Pages tool to save the healthy pages into a clean document.

🛡️Linear Byte Scanning, Object AST Synthesis, and XRef Table Regeneration

Our repair engine loads the raw ArrayBuffer and initiates a regex-based linear scanner that identifies '(\d+)\s+(\d+)\s+obj' tokens, extracting object numbers and physical offsets. For each object, it parses the dictionary payload, detects stream boundaries, and validates FlateDecode checksums. It identifies the root /Catalog or synthesizes one by collecting all valid /Type /Page dictionaries. It recalculates physical byte offsets from byte zero, writes a standard 20-byte fixed-format cross-reference table ('%010d %05d n \r\n'), constructs a compliant trailer dictionary << /Size count /Root catalogRef >>, and appends the 'startxref' and '%%EOF' markers. The entire repair pipeline executes in browser RAM in milliseconds.

Stack: WebAssembly • Multi-threaded Web Workers • HTML5 Canvas API

Privacy: Files never leave your device or touch a cloud buffer; analytics run only with your consent.

Why choose client-side browser tools?

When you compress an image or merge a PDF on 2run tools, the code executes inside your browser tab using WebAssembly and Web Workers. We never stream your bytes to a remote cloud server. Your private financial reports, personal photos, and legal agreements never leave your device.

Total PrivacyIn-Browser
Instant ProcessingFast RAM
Truly UnlimitedZero Limits

Frequently Asked Questions About Repairing PDFs

Can every corrupted PDF file be repaired?▾

Recovery success depends on what part of the file is damaged. If indexing structures (XRef tables, trailers) are damaged, recovery is nearly 100% successful. If the physical text or image streams were completely overwritten with zeros, those specific streams cannot be restored.

Why do PDF files get corrupted?▾

Common causes include interrupted internet downloads, abrupt computer shutdowns while saving, email systems altering line endings (CRLF vs LF), and storage drive bad sectors.

Will repairing a PDF change its fonts or page layouts?▾

No. The repair process fixes indexing pointers, trailers, and stream boundaries. It does not alter or re-encode surviving page content, fonts, or images.

Can I recover truncated PDFs that did not finish downloading?▾

Yes! Because our engine reconstructs the document catalog from scratch, it can recover and display all pages that were successfully downloaded prior to the interruption.

Can this tool repair password-protected PDFs?▾

If the file is encrypted, the encryption dictionary must be intact and you must know the password. If the encryption keys themselves are corrupted, the content cannot be decrypted.

Are my corrupted files uploaded to your servers during repair?▾

Never. All byte scanning, object parsing, and PDF reconstruction take place 100% locally inside your web browser. No file data is ever sent across the network.

What happens if a PDF is so badly damaged that pages cannot be reconstructed?▾

Our tool deploys forensic byte carving to extract raw embedded images, text streams, and font files directly from the surviving byte fragments, salvaging your valuable data even if the page structure is lost.

Is it safe to run the repair tool on an irreplaceable original file?▾

Yes! Our repair process operates entirely in-memory on a copy loaded into your browser's RAM. Your original file on disk is never altered or overwritten.

Sites Loading Under 0.8s
100/100 Lighthouse web engineering
Audit
Dev Arm for Design Agencies
White-label • Bilateral NDA
Partner
Technical SEO by Code
Deep Schema • Zero waste
Scale SEO
Custom Web Apps & SaaS
100% code ownership • Edge scale
Build
Turn Traffic into Sales
+34% sales lift • Fix bottlenecks
Audit