The basics
Load an image, press Find words, and Tesseract.js reads it — the file is never uploaded anywhere.
The first scan downloads a language model of a few megabytes, so it is slower than the ones after it.
Each word it finds becomes a numbered, clickable region on the image and a row in the list.
Click any word in the list to rename it if the scanner guessed wrong.
Tools
- Select · V
- Click a region to select it and read its coordinates. ⌫ removes it.
- Box · R
- Drag a rectangle around a word the scanner missed.
- Pen · P
- Click to drop points one at a time. With three or more down, click the first point again — it turns yellow when you are close enough to snap — or press ⏎ to close the shape.
- Trace · T
- Draw freehand around a word; the stroke is smoothed and closed for you.
- Remove · E
- Click regions to delete them. The ✕ in each list row does the same.
Anything you add by hand is read on its own: the region is cropped out, enlarged, and run through OCR in single-line mode, which is far more accurate on one word than a full-page pass. Hand-drawn regions are blue, scanner results yellow.
Coordinates
Every region — found or drawn — is an SVG path in the image's own pixel space, so the numbers work against the original file at any display size.
- Box and scanner hits:
M291,233 H574 V292 H291 Z
- Pen:
M291,233 L574,231 L576,290 Z
- Trace: relative smoothed curves,
m291,233c-1,0 -3,59 …z
Copy d takes the selected path. Copy all takes every path currently passing the filters, joined with |. The SVG export writes a ready-made overlay where each path carries an id, a data-word attribute and a tooltip.
Filters
Min confidence hides scanner results it was less sure about — useful for clearing noise off a busy scan. Hand-drawn regions have no score, so the slider never hides them. The search box filters by text. Both affect what is drawn, listed and copied by Copy all; CSV, JSON, SVG and Copy list always take everything.
Shortcuts
V select · R box · P pen · T trace · E remove
⏎ close pen path · ⌫ delete selected · Esc cancel or deselect
Ctrl/⌘ Z undo · Ctrl/⌘ ⇧ Z redo · ? this window
If a scan goes badly
- Sharp, high-contrast, upright text reads best; photos of screens and skewed pages read worst.
- Small text often fails at low resolution — a larger version of the same image usually fixes it.
- Set the language before scanning; the wrong model produces confident nonsense.
- If a word comes back as untitled, the crop was unreadable. Type the word in yourself; the coordinates are still good.