How to extract images from an RTF without uploading it
Every "free" online RTF tool you've used uploads your document to a company server, extracts it there, and — in several documented cases — keeps a copy or a live download link for days, or limits free users to a few conversions a month. For documents you wrote, were sent in confidence, or simply wouldn't post publicly, that's an unnecessary risk. The safer approach is to extract the file where it already is: on your own device.
This tool does exactly that. When you drop an RTF here, your browser:
- Checks the file is really an RTF document — by its magic bytes, not its name — so a JPEG renamed .rtf is refused with a clear message, a CBZ or plain .zip renamed .rtf is refused with a pointer at the CBZ tools, a PDF renamed .rtf is refused with a pointer at the Extract Images from PDF tool, a DOCX renamed .rtf is refused with a pointer at the Extract Images from DOCX tool, an XLSX renamed .rtf is refused with a pointer at the Extract Images from XLSX tool, a legacy .doc is refused with instructions to convert it in Word or LibreOffice Writer, and plain text is refused with an explanation instead of a cryptic error. A real RTF saved with the wrong extension still extracts.
- Reads the document's own \pict groups in document order — each picture's hex data (or the raw bytes after a \bin control word) is decoded, and the format is detected from the image bytes themselves, so a \jpegblip holding a PNG still comes out as a PNG. Duplicate pictures are listed once and skipped, embedded OLE objects (\objdata) are listed and not extracted, and pictures in an unsupported format are listed as skipped instead of silently dropped.
- Hands you the originals — download one image and it saves as image-01, image-02 and so on in document order; download the document as a ZIP and every image is renamed the same way. Nothing is re-encoded, rasterized or resized at any point: the bytes you download are the bytes that were stored in the document.
What makes this extractor different
Most pages that top the results for this search convert on a server, or handle one file at a time with no previews — instead of handing you the images themselves. The desktop options are installs, not browser tools. This page does the simpler job, and does it fully in the browser: no upload, no monthly cap, no account, no 10 MB limit, a batch of 20 documents, document order, sequential names on every download, duplicate pictures listed once, \objdata objects listed, and a live network-request counter so you can verify the privacy claim yourself.
Honest limitations
Verbatim means verbatim — no quality recovery
JPEG throws away detail when it compresses, and extracting cannot put it back. But nothing is lost either: the source bytes download unchanged, in every format. There is no quality setting because there is nothing to re-encode.
Metadata stays in the files
Extraction copies the stored bytes, so EXIF and other metadata inside each image is kept — including location data, if the image has any. The document's own text and formatting are never touched, but the images themselves are untouched too. Strip metadata yourself before sharing an image publicly.
WMF, EMF, DIB and PICT preview
WMF, EMF, DIB and PICT images are extracted as-is, exactly as stored. Most browsers cannot display these legacy formats, so the page shows a note instead of a broken image in that case, with the format and size shown. The file itself still downloads byte-for-byte and opens in any viewer that supports the format.
Legacy .doc and DOCX impostors
A legacy .doc is the old OLE binary format, not RTF, so this page cannot open it — convert it to .rtf in Word or LibreOffice Writer first. A DOCX is a ZIP archive, not RTF — use the Extract Images from DOCX tool, or save it as .rtf first. RTF itself has no encryption, so a password-protected RTF does not exist.
No text, linked images or embedded objects
This tool pulls out images only: it does not extract the document's text, it does not download pictures linked from the web (only embedded images have bytes inside the file), and embedded objects such as \objdata OLE objects are listed on the card but not extracted. An embedded object is not an image — it is a whole file stored inside the document, so there are no image bytes to pull out of it directly.
Document order, not page order
Document order comes from the \pict groups in the order they sit in the file, from start to finish. RTF has no page structure, so there is no page order to follow — a picture near the top of the file comes out before a picture near the bottom, whatever page it would print on.
Duplicate pictures and \bin vs hex
Word sometimes writes the same picture twice — once as a plain \pict and again as a fallback inside a shape group — so the second copy is listed as skipped instead of extracted twice. Most pictures store their bytes as hex digits; some writers use \binN, which stores exactly N raw bytes. Both are read, and both download byte-for-byte.