Convert HEIC to TXT

Converting HEIC to TXT reads the words out of an iPhone photograph and hands them back as plain text — including on a machine that will not open the HEIC at all. It takes two steps, because the recogniser has no HEIC decoder: convert the HEIC to PNG here first, then read the PNG. Nothing is uploaded.

  • Where it runs In your browser. The file is never uploaded.
  • Rebuilt TXT works differently from a HEIC, so this is not the gradual degradation a lossy codec applies. What TXT can express is reproduced faithfully; what it has no equivalent for does not survive at all.
  • File size limit Up to 100 MB per file, free, without an account.
  • Worth knowing The text is read by pattern recognition, so it is a best guess and not a transcript. Clean, straight, well-lit type at a decent resolution comes out close to perfect; a photograph taken at an angle, a faint fax, an unusual typeface or handwriting will produce mistakes. Always read the result against the original before relying on it. The language setting matters — text read with the wrong one comes back as confident nonsense rather than as an error.

Up to 100 files at once. Mixed formats are fine.

Two problems at once, and the second is the awkward one

You photographed a document with an iPhone and now you want the words. That is an ordinary recognition job. What makes this pair different is that on a Windows machine you frequently cannot even see the picture: HEIC holds HEVC, which is covered by patent pools many vendors declined to license, so Windows asks for a paid codec and several browsers show nothing at all.

So the usual advice — convert the picture first, then read the text — needs two steps and a working decoder for the first of them. Both of those live in this browser tab, which is what sidesteps the codec question: converting HEIC to PNG here decodes the HEVC frame in WebAssembly, and the recognition then runs on the PNG.

Two steps, because the recogniser will not take a HEIC

The recognition engine is handed the file exactly as you dropped it, with nothing decoding it on the way in — deliberately, since pushing an image through a canvas first would flatten transparency to black. That leaves only the readers compiled into the engine itself, and there are six: BMP, JPEG, PNG, PBM, WebP and non-animated GIF. HEIC is not among them, and there is no HEIF reader anywhere in the recognition core this site serves.

So convert the HEIC to PNG on this site, then read the text out of that PNG. The decoding step is a different piece of software from the recogniser — the same one behind HEIC to PNG and HEIC to JPG — and it does handle HEVC stills. Pick PNG rather than JPG for the file in the middle: the photograph has already been through one lossy pass on the phone, and a second one softens exactly the thin strokes the recogniser has to match. Delete the PNG once the text is out.

Use Live Text when the phone still has the photo

It would be dishonest not to say this. If the photograph is on the iPhone and you want a paragraph out of it, holding your finger on the text and copying it is faster than anything on a website, and it is built into the phone.

This page is for the other situations: the pictures are already on a computer, there are forty of them, you want the whole page as a file rather than a selection, or you are working on a machine that is not yours. Those are common enough to be worth a page, and Live Text does not help with any of them.

iPhone photographs are unusually good OCR input

The resolution helps: twelve megapixels or more means plenty of pixels per character even when the page fills only part of the frame. The lens and the processing help too — a modern phone photograph of a page is sharper and more evenly exposed than most flatbed scans from fifteen years ago.

What still governs the result is how the picture was taken. Hold the page flat, shoot straight down rather than from a chair, and get the light from the side so your own shadow is not across the text. Those three things matter more than any setting on this page.

The result is a guess, and it will not tell you which parts

Recognition matches shapes to letters. It does not understand the document, and it produces fluent, complete-looking text whether or not it read every character correctly.

That is the important caution, and it applies most to the things people photograph on a phone: amounts on a receipt, a reference number on a letter, a dosage on a label, a date on a form. Read the output against the original, and read the numbers twice — a wrong digit looks exactly like a right one.

Set the language before you convert

The recogniser works within one language’s letterforms and vocabulary. Given the wrong one it does not report an error; it returns the best match available in a set that does not contain the correct answer, which reads as confident nonsense.

This bites hardest on exactly the documents people photograph while travelling — a menu, a form, a notice, a ticket — where the language is not the one the machine defaults to. If a result looks strange in a way you cannot account for, check this first.

You get the words, not the document

The output is plain text with no layout: no columns, no table structure, no positions on the page. A letter or a receipt comes back in a readable order. A two-column page can interleave, because the recogniser reads across lines that look like lines.

Forms are the hardest case — labels and values end up adjacent in ways that are hard to untangle, and a table of figures becomes a run of numbers with no columns. For those, photographing one section at a time gives a result you can actually use.

Nothing leaves the device

Both steps happen inside the browser tab on your own processor: the HEIC is decoded there to make the PNG, and the text is read there too. No upload, no server copy, no account, no daily allowance — and a whole folder of photographs converts as fast as your machine can read them.

For this particular pair that is the substantive point rather than a feature. A photograph of a prescription, a payslip or a signed letter is exactly the file you would not want sitting on somebody else’s server, and the simplest guarantee is that it never went there.

How to read the text out of a HEIC photograph

  1. Photograph the page flat and straight, with the light coming from the side.
  2. Convert the HEIC to PNG first — the recogniser cannot open a HEIC.
  3. Read the text out of that PNG, choosing the language before you convert.
  4. Read the result against the original, and check every number.

HEIC and TXT: an iPhone photo read as characters

HEIC compared with TXT
HEICTXT
Full nameHigh Efficiency Image ContainerPlain Text
File extension.heic.txt, .text, .log
Media typeimage/heictext/plain
CompressionLossy — file size is bought with quality
First published20151963
Published byMPEG
SpecificationISO/IEC 23008-12Unicode
LicensingPublished, not standardisedOpen standard
Standing todayCurrentCurrent
Bit depth10
Colour it can describeYCbCr, wide gamut
Opens in a browserSome browsersEvery browser
Considered insteadJPG, AVIF, WebPMD, RTF

What the target format adds

TXT is a working format and HEIC is a finished one. What comes back is editable text and objects rather than a picture of a page, which is usually the reason for the conversion and also where its limits are.

Opening the result

TXT opens in every current browser. HEIC has narrower browser support than that. If the file is going onto a web page or into a form, that is usually the whole reason for the conversion.

The usual programs do not overlap: HEIC opens in Apple Photos and Adobe Lightroom, TXT in Notepad, TextEdit and Visual Studio Code — so whoever receives the result needs something from the second list.

File size and quality

The result is larger than the original and no better. HEIC has already discarded detail, and TXT stores what is left without discarding more — it prevents further loss rather than undoing the first one.

What each format is for

The two are aimed at different work: HEIC at phones and photography, TXT at moving data between programs and archiving. That is worth weighing before converting, because the reason one exists is usually the reason the other is awkward.

HEIC is MPEG's format, published in 2015. It records 10 bits per channel.

TXT dates from 1963, specified as Unicode. Notepad, TextEdit and Visual Studio Code all read it.

TXT was published in 1963 and HEIC in 2015. The older one is generally the safer file to hand to somebody; the newer one usually does the job in fewer bytes.

HEIC to TXT: accuracy, Live Text and compatibility

Are my HEIC files uploaded anywhere?

No. This conversion runs entirely inside your browser, so the file never leaves your device. You can confirm it yourself: open the network tab of your browser's developer tools and convert something. You will see the page load, plus the analytics and advertising the site is paid for with — and nothing carrying your file. The engine behind this particular pair is libheif, the reference decoder for Apple's HEIC; your browser fetches it once and caches it.

Why will my computer not open the HEIC at all?

The codec inside is HEVC, which sits behind patent pools that many vendors declined to license. Windows asks for a paid codec from the Store and several browsers will not display the format. Converting the HEIC to PNG here decodes it in your browser, so nothing has to be installed.

Should I just use Live Text on the phone instead?

If the photograph is on your phone and you only need a short passage, yes — hold your finger on the text and copy it. Come here when the photographs are already on a computer, when there are many of them, or when you want the whole page rather than a selection.

How accurate is it?

It depends on the photograph rather than on the format. Straight, well-lit, in-focus printed type comes out close to perfect; a page shot at an angle or in shadow produces mistakes. HEIC files from a modern iPhone are usually high resolution, which helps considerably.

Why is the output nonsense?

Usually the language setting. Text read against the wrong language does not fail — it produces confident nonsense, because the recogniser is matching shapes within a vocabulary that does not contain the right answer. Set it before converting.

Does it work on a Live Photo?

Yes, on the same two-step route. Converting the HEIC to PNG takes the still frame and ignores the short video in the container, and that still is the frame you took — so it is the right one to read.

Are my photographs uploaded?

No. Both steps — the HEIC decoding and the recognition — run inside your own browser, so nothing leaves your device. That matters here, because what people photograph is receipts, prescriptions, bank letters and pages with their own name on them.

More about these formats