Dezoomify finds the full image behind a zoomable viewer and assembles its tiles into a picture you can save. It works with image viewers used by museums, libraries, archives, and map collections.
The same Dezoomify codebase runs on different platforms, with different capabilities.
- Website: The easiest to run, but least powerful. Nothing to install: paste the address of the image's page. Some websites block it, and it cannot use your browser login. The browser limits the maximum image size, so it may save a smaller resolution than the source offers. Saves PNG files. Guide.
- Browser extension for Chrome and for Firefox: Works with websites where you are signed in and works around some restrictions that prevent the website from saving images. It also finds image addresses that are hidden behind the viewer: open the image's page and click the Dezoomify button in your browser toolbar. Has the same final image size limits as the website. Guide.
- Desktop app: For Windows, macOS, and Linux. Saves larger images, opens local files, and supports PNG, JPEG, TIFF, ZIF, WebP, and IIIF tile folders. Interrupted saves can resume using cached tiles. Image size is limited by your available memory. It can work with some sites that refuse the website's requests, but cannot reuse your browser login; use the extension for signed-in pages. Guide.
- Command-line tool: The same saving
capabilities as the desktop app, for scripts. Choose a particular image or
zoom level, limit the resolution, or save a list of addresses with
--bulk. The releases page provides a Linux x86_64 executable in thedezoomify-cliarchive. To build it from source, see below.
Desktop installers are available as .msi for Windows x86_64, .dmg for
Apple silicon Macs, and .deb for Linux x86_64. They are unsigned, so your
operating system may ask you to confirm that you trust the installer. Updates
are installed manually from the releases page; there is no automatic update.
The legacy website remains available.
- Open the page that shows the zoomable image and copy its address.
- Paste it into the Dezoomify website and press Dezoomify.
- When the image is ready, press Save to keep the PNG file.
Dezoomify supports IIIF, Deep Zoom, Zoomify, Google Arts & Culture, krpano,
and other image formats. No app works with
every website. If you already have the address of the image's description
file, such as info.json, ImageProperties.xml, or a .dzi file, you can
paste that directly instead of the viewer page.
- No image found: Try the browser extension on the page showing the image. If it still finds nothing, follow finding the image address to locate the description file yourself.
- Login required or access refused: Use the extension while signed in. If the site only serves images to its own viewer, the desktop app or CLI can identify the viewing page in their requests; see forbidden or unauthorized errors.
- Image too large, blank, or impossible to save: Use the desktop app. Installing the extension does not remove the browser's size limits.
- Too many requests (429): Wait a few minutes before trying again.
See troubleshooting for interrupted saves and other problems. Search existing issues for the site's name before requesting support for a site or reporting an app bug. Include the exact viewing page address, the address you gave Dezoomify, which app you used, and the error message or diagnostic report from Technical details & logs.
Install Rust and Node.js 24.15.0 or newer, then run these commands from the repository root:
cargo xtask setup
cargo xtask check
cargo xtask test
cargo xtask dev webTo build the command-line tool, run cargo xtask build cli. The executable
is target/debug/dezoomify-cli:
target/debug/dezoomify-cli "https://museum.example/collection/painting" painting.pngSee the development guide for build and test commands, and Contributing a format to add support for a site format.