# PDF OCR

> Make a scanned PDF searchable in your browser. OCR reads each page and hides the text behind the original picture. Chinese and English; nothing uploaded.

- URL: https://bytescope.dev/en/pdf-ocr/
- Locale: en · Also: [ja](https://bytescope.dev/ja/pdf-ocr.md) · [zh-Hant](https://bytescope.dev/zh-Hant/pdf-ocr.md)
- Runs: Your files never leave your browser — all processing is local.
- Requires: OCR runs in any modern browser (WebGPU where available, WebAssembly otherwise), so the first page waits for the recognition model to download.
- Updated: 2026-09-08

## What it does

A scanned contract, handout or letter looks like paper, so you cannot search for a clause or copy a sentence out of it. This page reads each scanned page with OCR and adds the recognised text as an invisible layer over the original picture, which is never re-encoded. Search, selection and copy then work in any PDF reader, and the file looks just as it did. The recognition model runs in this tab; the text on your pages is not sent anywhere.

### Pages that already have text are skipped

Every page is checked first. A page with almost no text is a scan and gets OCR, while a page that already has text is left alone, so a half-digital file is not read twice. Tick the redo box if the existing text came from a poor OCR tool. Choose 200 DPI, which is enough for the text detector, or 300 DPI for very small print at roughly double the time. Pages are drawn one at a time, so memory stays low. You can stop at any point: the pages already read can still be saved as a PDF and as a plain text file with one block per page.

### Honest limits

The recogniser reads Chinese and English only. Japanese, Korean and other scripts come out as wrong characters or are missed, and this page says so before you start. OCR also misreads letters now and then, especially in handwriting, faint or low-resolution scans and tables with many rules, so searchable does not mean correct. The layer copies everything the picture shows, including what you would rather hide, so this is not a redaction tool. The picture itself is never changed.

## Limits

Does not read Japanese, Korean or other scripts (the recogniser covers Chinese and English only), does not check that the text it adds is correct, does not rewrite text that is already in the file unless you tick redo, does not edit the picture itself or hide anything you draw over it, and does not run on a PDF that is password-protected.

## FAQ

### Is my PDF uploaded anywhere?

No. The file is read, drawn page by page and rebuilt in this tab, and the recognition model runs in your browser. Nothing about the pages is sent to a server.

### Does it work on Japanese or Korean scans?

Not reliably. The recogniser covers Chinese and English. Japanese and Korean text is misread or missed, and the saved file still looks searchable even where the words are wrong, so check a few lines before you rely on it.

### Why were some pages skipped?

Pages that already have a text layer are left alone so their text is not replaced. Tick the redo box to read them again, which helps when the old text came from a weak OCR tool.

### Will the pages look different afterwards?

No. The original picture is kept byte for byte and the text is added in invisible render mode, so the page looks the same. Only search, selection and copy change.

### How long does it take?

Roughly one recognition per page, so it depends on the page count and your computer. The page shows an estimate after the first page. 200 DPI is the default; 300 DPI doubles the work and rarely helps normal text.

## Related tools

- [Split PDF](https://bytescope.dev/en/pdf-split.md) — Pull out the pages you need once they are searchable.
- [Merge PDF](https://bytescope.dev/en/pdf-merge.md) — Join several PDFs into one file.
- [Compress PDF](https://bytescope.dev/en/pdf-compress.md) — Shrink the file after OCR, which adds a little size.
- [Image to Text](https://bytescope.dev/en/image-to-text.md) — Read the text out of a single photo or screenshot.
