Flatten to Image PDF

Rasterize every page to destroy all hidden structure: fonts, layers, metadata, EXIF, scripts, forms.

Category: Privacy
Processing: On-device
Quota bucket: Heavy
Open interactive tool: /tools/flatten

How to use Flatten to Image PDF

  1. Choose one PDF to flatten. Every page will be rendered to pixels and re-embedded as an image.
  2. Select DPI: 150 (good for screen sharing, ~0.3-0.8MB/page), 200 (print-quality, ~0.5-1.5MB/page), 300 (archival, ~1-3MB/page).
  3. Select format: PNG (lossless, larger) or JPEG (lossy, smaller). For text-heavy pages, JPEG at 85% quality is usually indistinguishable.
  4. Run flatten. Each page is rendered via PDF.js, drawn to a canvas, and exported. Progress shows per-page status.
  5. Download the output and verify visually. Text is intentionally non-selectable — the entire page is now a single image.

Tips

  • 150 DPI is sufficient for screen viewing and email sharing. Only use 200+ if the document will be printed.
  • JPEG at 85% quality produces files roughly 3x smaller than PNG with no visible difference at normal zoom. Use PNG only when pixel-perfect reproduction matters.
  • Flatten is the nuclear option for metadata removal. It destroys: fonts (preventing font fingerprinting), forms (preventing data extraction), JavaScript (preventing tracking), layers (preventing hidden content), EXIF in embedded images, and all PDF structure. What remains is visual content only.
  • Output file size depends heavily on page content. Text-only pages compress well (~0.3MB at 150 DPI JPEG). Full-color photos expand significantly (~1-2MB per page).
  • For maximum privacy, chain: Paranoid Scrub → Flatten → Compress. The scrub removes metadata, flatten destroys structure, compress reduces the inflated file size.
Privacy: Your files never leave your browser. All processing runs on-device. Full privacy model

Frequently asked questions

What does Flatten to Image PDF change?

It renders every page to a pixel image using PDF.js, then embeds those images in a new PDF. The original PDF structure is completely destroyed: fonts, forms, annotations, JavaScript, layers, EXIF, and metadata are all gone. What remains is exactly what you see on screen — nothing more.

Is Flatten to Image PDF private by default?

Processing is entirely local. PDF.js renders pages in a canvas element, the canvas exports as PNG or JPEG, and pdf-lib builds a new PDF from those images. No bytes leave your browser at any step.

What does Flatten to Image PDF not protect?

It destroys all structure, including useful structure. Text selection, form filling, accessibility features, and bookmarks are gone. File size increases for text-heavy documents. The 200-page cap exists for browser memory safety.

Limitations

  • Text becomes non-selectable. Recipients cannot copy-paste, search, or index the text. If they need searchable text, they would need to OCR the result.
  • Output file size is almost always larger than the original for text-heavy documents. A 500KB text PDF may become 3-5MB after flatten at 150 DPI.
  • 200-page cap exists because each page requires ~50-100MB of RAM for canvas rendering. For longer documents, split first and flatten sections.
  • Transparent elements and blend modes may render differently than in specialized PDF viewers. Always verify the output.