How do I extract text from an image or a scan?
Open a picture or a scan and the tool recognises the text in it, entirely on your machine, then lets you copy or download the result. The recognition engine and the language data are served from this site rather than fetched from a third-party API, so a page of handwriting, an ID document or a contract never leaves your device.
Runs entirely in your browser · no upload · no account · no watermark
- Open a photo or a scan of the page you want to read.
- Choose the language the text is written in.
- Run the recognition, then copy the text or download it as a file.
PNG, JPEG, WebP, GIF or BMP. The picture is read by this page and never sent anywhere.
The text box is editable: fix anything the engine got wrong before you copy it out.
What this page can do
- Recognise text in PNG, JPEG and WebP images
- English and Simplified Chinese recognition data
- Copy the text or download it as a file
- Runs offline once the engine has been loaded
When to use this page
- Copying text out of a screenshot or a clean scan.
- A handful of pages where a good-enough transcription is useful.
- Text must not leave the device.
When to use something else
- Handwriting, heavy skew, low contrast or complex multi-column tables.
- You need layout reconstruction, reading order, tables or bounding boxes.
- You are processing hundreds of pages, or you need the result immediately on a slow connection.
How it compares with other options
Tesseract runs locally here, which means the first visit downloads a language model (tens of megabytes) and recognition is slower than a cloud API. Services such as Google Vision or AWS Textract are markedly better on handwriting and complex layouts and can return structure and coordinates, but they require uploading the image and usually an account. This page gives you plain text from clear printed material, with no upload and no table reconstruction.
Where your files go
Nowhere. This page loads the code that does the work, and from then on the file you open is read by your own browser. There is no upload step, no temporary server copy and no cleanup to trust — the data never crosses the network, so there is nothing to delete afterwards. You can confirm it yourself: open your browser’s network panel while the tool runs and watch it stay quiet.
Questions about this tool
- Where does the recognition actually happen?
- In a Web Worker on your own machine. The page downloads the recognition engine once — about 3.8 MB of JavaScript and WebAssembly — and the language data for the language you pick. After that the image is read by your CPU and never transmitted. You can confirm it in your browser’s network panel: the only requests are for those two files.
- How large is the download, and is it cached?
- About 7.8 MB the first time you use English, or about 10.2 MB if you also need Simplified Chinese. The browser caches all of it, so a second run on the same language starts immediately and needs no network at all.
- How accurate is it?
- On a clean, straight, well-lit scan of printed text, character accuracy is typically above 98%. Accuracy drops with handwriting, skewed or curved pages, low contrast, small type and photographs of screens. If the result looks wrong, re-running with a tighter crop of the text column usually helps more than anything else.
- Does it keep the layout, tables or columns?
- No. The output is plain text in reading order. Multi-column pages are usually read column by column but the columns are not marked, and tables come out as a run of lines. This page is for getting the words out, not for rebuilding a document.
- Which image formats can I open?
- Anything your browser can decode — PNG, JPEG, WebP, GIF, BMP and AVIF. A PDF page is not an image, so export the page as PNG first; the “PDF to images” tool on this site does exactly that without uploading the PDF.