Image to Text (OCR)

Turn pictures of text into text you can edit and search.

Drop images here, click to browse, or paste a screenshotJPG, PNG, WebP, HEIC, BMP · multiple files · nothing is uploaded
Layout

Printed text only. Language choice matters most; the first run downloads the engine (about 4 MB) and one language model.

What this OCR tool does

Drop a photo of a document, a screenshot, a scanned page or a picture of a sign, and the text in it comes back as real, selectable text under the image. Twelve languages are available — English, Simplified and Traditional Chinese, Japanese, Korean, Spanish, French, German, Portuguese, Russian, Italian and Vietnamese — and for the Asian languages a tick box adds English at the same time, so a Chinese contract with English names and numbers is read as one document. Many images can be dropped together; each is recognised in turn with a progress bar, and the result box is editable so you can fix the odd character before copying.

Recognition uses Tesseract, the open-source OCR engine developed at HP and Google, compiled to WebAssembly and running in a worker thread of your browser. Before recognition each image is cleaned up automatically: converted to grayscale, enlarged if it is small (phone screenshots and low-resolution scans gain the most) and given a white background if it was transparent. The engine and the language model for the language you pick are downloaded once — about 4 MB plus 1–3 MB per language — then cached; the image itself never leaves your device, which matters for ID cards, contracts and medical papers.

How to use it

Choose the language of the text first — it is the single biggest factor in accuracy — and keep Also English ticked for Chinese, Japanese or Korean documents that contain Latin words. Drop, paste or choose the images. Wait for the progress bar; the first run also loads the engine. Read the result in the box: the confidence figure next to it is the engine's own estimate, and anything below about 80 % deserves a look. Edit in place if needed, then Copy the text or Download it as a .txt file; Copy all and Download all handle a whole batch (several files come as a ZIP).

Layout: Auto detects columns and blocks and suits scanned pages and photos; Single block treats the image as one column of text and is steadier for screenshots of chat messages, code and simple lists. If a document arrived as a PDF, run PDF to image first and send the pages here with one click. Crooked photos read better after Rotate image and Crop image.

Common pitfalls

OCR reads printed text; handwriting, decorative fonts and text on busy backgrounds come out garbled, and no browser tool changes that. Accuracy depends mostly on the photo: fill the frame with the page, keep it flat and straight, use good even light, avoid shadows and glare, and do not shrink the image before dropping it — a 12-megapixel photo of an A4 page is ideal, a 600-pixel thumbnail is hopeless. Wrong language is the other big cause of nonsense: a Japanese page read as Chinese, or a French one as English, produces plausible-looking rubbish.

Tables come out as lines of text without the grid; columns of a two-column layout may interleave in Single block mode — use Auto for those. Numbers with few surrounding words (invoices, meter readings) are read well but always worth checking, because a 6 and an 8 look alike to a machine too. The first use on a device downloads the engine and one language model, so it needs a network connection once; afterwards the tool works offline. Very large batches on a phone can be slow — a few seconds per page is normal.

Background: how the text is recognised

Tesseract's current engine is an LSTM neural network that reads a line of pixels as a sequence and emits characters, trained separately for each language on millions of lines of printed text. The page is first analysed for layout — where the text blocks, lines and words are — then each line is normalised to a fixed height and fed to the network. The models used here are the tessdata_best set quantised to 8-bit integers: the same accuracy as the full-precision models at a fraction of the size, which is what makes self-hosting all twelve languages practical.

Everything runs in WebAssembly with SIMD acceleration when the browser supports it (all current browsers do), inside a worker so the page stays responsive. Preprocessing is done on a canvas in the page: grayscale conversion removes colour noise, and scaling small images up to roughly 2000 pixels on the long side brings the letters into the size range the network was trained on. No pixels are sent anywhere; the page works offline once the engine and model are cached.

When you need image-to-text

Copying a paragraph from a screenshot someone sent you. Turning a photographed whiteboard, slide or page of a book into notes. Getting the text out of a scanned letter or an old PDF that is only images. Extracting an address, an order number or a serial number from a photo. Digitising receipts and invoices for bookkeeping. Reading a menu, sign or label in another script so you can paste it into a translator.

On this site the chain is: rotate and crop the photo if needed, recognise the text here, and for PDFs go through PDF to image first. A document built from photos can be assembled with image to PDF once the text has been checked.

Frequently asked questions

Are my images uploaded?

No. Recognition runs in your browser with Tesseract compiled to WebAssembly. The image never leaves your device. The engine and language model are downloaded once and cached; after that the tool works offline.

Which languages are supported?

English, Simplified Chinese, Traditional Chinese, Japanese, Korean, Spanish, French, German, Portuguese, Russian, Italian and Vietnamese. Asian languages can be combined with English in one pass.

Can it read handwriting?

No — only printed text. Handwriting, decorative fonts and text over busy backgrounds are not read reliably by this or any browser-based OCR.

How do I get better accuracy?

Pick the right language, use a sharp, evenly lit, straight photo at full resolution, and crop to the text. Small or blurry images are enlarged automatically but cannot be sharpened.

Can I OCR a PDF?

Convert its pages with the PDF to image tool and send them here; each page becomes one editable text block.