OCR5 min

How to Extract Text from an Image (JPG, PNG, HEIC) — Free & Private

Pull text out of any screenshot, photo, or HEIC file entirely in your browser. Here's the practical workflow, tips for cleaner output, and the format quirks that trip most OCR tools.

Zro7 Image to Text runs Tesseract.js in a Web Worker. The image and recognized text never leave your device.

To extract text from a JPG, PNG, WebP, or HEIC image, open Zro7 Image to Text, drag the file in, choose the language, and hit Recognize. The recognized text appears in seconds with per-word confidence highlighting. Nothing is uploaded — Tesseract.js runs in your browser.

Which formats work

  • JPG / PNG / WebP / BMP / TIFF — decoded natively by the browser.
  • HEIC (iPhone photos) — Zro7 auto-converts via HEIC to JPG under the hood before OCR.
  • PDF — use PDF OCR instead; it rasterizes pages and runs Tesseract on each.
  • SVG — not useful; extract text with an XML parser instead.

Tips for cleaner output

  1. Straighten the image — even a 5° tilt drops accuracy noticeably. Rotate before OCR.
  2. Crop tightly — remove backgrounds, tables of contents, page numbers.
  3. Boost contrast — dark grey on light grey confuses the segmenter. Convert to pure black-on-white if needed.
  4. Screenshot at 2× — for on-screen text, take a Retina-density screenshot rather than a small crop.
  5. Pick the right language — 'eng' is fastest; add languages only for actual multilingual pages.

Common gotchas

  • Handwriting — Tesseract wasn't trained for it. Use a phone with on-device handwriting recognition instead.
  • Stylized fonts — logos, script fonts, and heavy calligraphy will be near-random.
  • Two-column layouts — enable 'Auto' page segmentation mode; without it, Tesseract may read across columns.
  • Text on top of photos — subtitle-style overlays work; text embedded in busy scenery does not.

Steps

  1. Open Image to Text.
  2. Drop your image (JPG, PNG, HEIC, WebP…).
  3. Pick language(s) and hit Recognize.
  4. Copy the text or download .txt. Use Receipt Scanner or Business Card Reader for structured output.

Frequently asked questions

Does HEIC OCR require any install?

No — Zro7 transparently converts HEIC in the browser first, then OCRs the resulting JPG.

Can I keep line breaks?

Yes — Zro7 preserves layout when possible. If you want strict formatting, choose HOCR export.

How big of an image can I OCR?

Practical limit is around 25 MP per image before memory pressure. Larger scans should be split.

What about Japanese, Chinese, Arabic?

All supported — each language adds ~10–40 MB one-time download.

Is anything uploaded?

No. All processing happens locally via WebAssembly.

Related posts

← Back to blog