ImageTools

About ImageTools

ImageToolsis a free set of image tools that run entirely inside your web browser: convert between HEIC, PNG, JPG, WEBP, AVIF, BMP and TIFF, resize, compress, crop, rotate, and make PDFs. The HEIC converter is the flagship, because most non-Apple devices still can’t open a .heic file. The popular online tools make you upload your images to their servers, create an account, or accept a watermark. ImageTools does none of that: your images are processed on your own device and are never uploaded.

You can verify the no-upload claim yourself. Open your browser’s developer tools, switch to the Network tab, and convert a photo — you’ll see the image bytes never leave your machine. The only network request the tool makes is a one-time download of the decoding engine itself.

What it does, honestly

These tools decode your image in your browser and re-encode, resize, compress, crop, rotate, or repackage it as a standard JPG, PNG, WEBP, or PDF. They are real, full-resolution operations — not thumbnails. They do NOT preserve everything: JPG, WEBP, and PDF are lossy and drop transparency; for HEIC, depth maps, Live Photo motion, and some camera metadata are not carried into the output; resizing up cannot add detail that was never captured; and a file that is corrupt, truncated, or uses an unsupported codec or variant is reported as un-decodable rather than shown as a blank image. Your images are processed entirely on your device and are never uploaded.

How it works

When you drop in a file, the work happens in a Web Worker so the page stays responsive — and all of it runs locally. For a HEIC photo, a WebAssembly build of libheifdecodes it to raw pixels. For ordinary formats (PNG, JPG, WEBP, AVIF, BMP), your browser’s own image decoder does the reading; TIFF is decoded by the open-source UTIF.js library. The pixels are then redrawn on a canvas — resized, cropped, rotated as needed — and re-encoded to the format you chose using your browser’s own image and PDF facilities. Nothing is ever sent to a server.

Open-source libraries & licenses

The HEIC decoding is done by libheif (1.18.2), which is licensed under the LGPL-3.0. We ship its compiled WebAssembly (libheif.wasm) as a separate, self-hosted asset rather than inlining it into our own code, so it remains a distinct, replaceable component — in keeping with the LGPL. We reach it through the libheif-js npm package. Decodes HEIC/HEIF photos (HEVC-coded images, including multi-image Live Photo and burst containers) to raw RGBA pixels, entirely in the browser via WebAssembly. We ship its compiled libheif.wasm as a distinct, self-hosted asset and link it from our own first-party code rather than inlining it.

Test images

The decoder is tested against real HEIC files, not images produced by our own code (which would be circular):

ImageTools is an independent project and is not affiliated with or endorsed by Apple. HEIC and HEIF are described here for compatibility purposes only. See our Terms.