Cleans noisy scanned PDF pages with a pure-JavaScript pipeline (no external binaries required) and genuine image-processing kernels.
Per-page content-aware processing (important):
- Image pages (scanned documents): rasterized and denoised. This is where noise removal matters.
- Text pages (including mixed text + image): copied verbatim. Vector text, fonts, and searchability are fully preserved.
- Empty pages: copied verbatim.
If your scan carries an OCR text layer (so it reads as a "text" page) but the underlying image is still noisy, enable "Rasterize Text Pages" to force processing.
Denoise modes (all real algorithms):
- Auto: 3x3 median filter + isolated-speck despeckle. Balanced cleanup that preserves tone and edges — the recommended default.
- Median: 3x3 per-channel median filter (1–3 passes). The classic remedy for salt-and-pepper / impulse noise.
- Binarize: Otsu adaptive threshold. Collapses faint background haze into clean white and renders foreground to solid black — ideal for legibility of scanned text.
How it works (image pages):
- Each image page is rasterized with pdf.js
- The chosen denoise kernel runs on the raw pixel buffer
- The cleaned image is embedded into a new PDF