Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
D

dezoomify-rs

> 编程语言
Open source

Zoomable image downloader for Google Arts & Culture, Zoomify, IIIF, and others

1.0K stars0 likes0 views
WebsiteGitHub

About

Zoomable image downloader for Google Arts & Culture, Zoomify, IIIF, and others

dezoomify-rs

dezoomify-rs is a tiled image downloader. Some webpages present high-resolution zoomable images without a way to download them. These images are often tiled: the original large image has been split into smaller individual image files called tiles. The only way to download such an image is to download all the tiles separately and then stitch them together. This process can be automated by a tiled image downloader.

The most common tiled image downloader is probably dezoomify, an online tool which is very easy to use.

The goal of this project is not to replace the traditional dezoomify. However, some images are so large that they can't be efficiently downloaded and displayed inside a web browser. Other times, a website tries to protect its tiles by refusing access to them when certain HTTP headers are not set to the right values. dezoomify-rs is a desktop application for Windows, MacOs and linux that does not have the same limitations as the online zoomify. dezoomify-rs also lets the user choose between several image formats, whereas in dezoomify, you can only save the image as PNG.

dezoomify-rs supports several zoomable image formats, each backed by a dedicated dezoomer. The following dezoomers are currently available:

  • Google Arts & Culture supports downloading images from artsandculture.google.com;
  • zoomify supports the popular zoomable image format Zoomify.
  • deepzoom supports Microsoft's DZI format (Deep Zoom Image), that is often used with the seadragon viewer.
  • IIIF supports the widely used International Image Interoperability Framework format.
  • Krpano supports the krpano panorama viewer
  • IIPImage supports the iipimage image format
  • XLimage supports XLimage image servers;
  • TopViewer supports Picturae Memorix image services;
  • FSI supports Neptune Labs FSI Server images;
  • LizardTech supports LizardTech ImageServer services;
  • VLS supports Semantics Visual Library Server viewers;
  • Hungaricana supports Hungaricana ECW image services;
  • WMTS supports Web Map Tile Service capabilities documents;
  • ArcGIS supports cached ArcGIS MapServer services;
  • pnav supports crop-based pnav image services;
  • generic For when the tile URLs follow a simple pattern.
  • custom for advanced users. It allows you to specify a custom tile URL format that can contain multiple variables. This gives you the most flexibity, but requires some manual work.

Screenshots

https://github.com/user-attachments/assets/e7174665-004d-44b2-a9f5-ae5a838e1262

Usage instructions

Download dezoomify-rs

First of all, you have to download the application.

  1. Go to the the latest release page,
  2. download the version that matches your operating system (Windows, MacOS, or Linux),
  3. Extract the binary from the compressed file.

On some operating systems, you may have to authorize the application execution before being able to launch it. See how to do in MacOS.

Install via Homebrew

As an alternative to installing the binary directly, on macOS and Linux dezoomify-rs is available via the Homebrew package manager. It can be installed with the command brew install dezoomify-rs.

Supported output image formats

Dezoomify-rs supports multiple output image formats. The format to use is determined by the name of the output file. For instance, entering dezoomify-rs http://example.com/ my_image.png on the command line will create a PNG image.

Each image format encoder has a distinct set of features and limitations :

  • PNG images are compressed losslessly, which means that the output image quality is (very slightly) better than JPEG, at the expense of much larger file sizes. The PNG encoder in dezoomify-rs can create very large images; it is not limited by the available memory on your computer. This format is chosen by default when the image is very large, or its size is not known in advance.
  • JPEG is the most common image format. JPEG images cannot be more than 65,535 pixels wide or high. This format is chosen be default for images that fit within this limit. The JPEG encoder in dezoomify-rs requires the whole image to fit in memory on your computer.
  • All formats supported by image-rs are also supported.
  • IIIF, which allows you to re-create a zoomable image locally. This is the recommended output format when your image is very large (multiple hundreds of megapixels), since most image viewers do not accept huge PNGs or JPEGs. If the output path ends with .iiif, a folder will be created instead of a single file, with its structure following the IIIF specification. A file called viewer.html will be created inside this folder, which you can open in your browser to view the image.

Tile cache

By default, dezoomify-rs works entirely in memory, which is very fast. However, the latest versions added the possibility to use a "tile cache". When you launch dezoomify-rs from the commandline with dezoomify-rs --tile-cache my_caching_folder http://myurl.com, it will save all the image tiles it downloads to the specified folder. If the download is interrupted before the end, you will be able to resume it later by specifying the same tile cache folder. A tile cache also allows you to manually get the individual tiles if you want to stitch them manually.

Dezoomers

Google Arts Culture

In order to download images from google arts and culture, just open dezoomify-rs, and when asked, enter the URL of a viewing page, such as https://artsandculture.google.com/asset/light-in-the-dark/ZQFouDGMVmsI2w

Zoomify

You can give dezoomify-rs the URL of a Zoomify viewer page, the ImageProperties.xml file, or one of the image tiles. Viewer-page discovery supports standard Z.showImage viewers and OpenSeadragon zoomifytileservice declarations. You can use dezoomify-extension to find the URL of this file.

Alternatively, you can find it out manually by opening your network inspector. If the image tile URLs have the form http://example.com/path/to/TileGroup1/1-2-3.jpg, dezoomify-rs will derive and request http://example.com/path/to/ImageProperties.xml automatically.

IIIF

The IIIF dezoomer takes the URL of an info.json file as input.

You can use dezoomify-extension to find the URL of this file.

Alternatively, you can find this url in your browser's network inspector when loading the image.

IIIF Manifest Support

dezoomify-rs accepts IIIF Presentation API manifest URLs as bulk input. It extracts image entries from the manifest and builds output filenames from available manifest metadata (for example manifest title and canvas label).

DeepZoom

The DeepZoom dezoomer takes the URL of a dzi file as input, which you can find using dezoomify-extension.

You can find this url in your browser's network inspector when loading the image. If the image tile URLs have the form http://test.com/y/xy_files/1/2_3.jpg, then the URL to enter is http://test.com/y/xy.dzi.

Krpano

Krpano is a zoomable image format often used for panoramas, virtual tours, photoshperes, and other 3d zoomable images. dezoomify-rs supports downloading individual image planes from such images. You need to provide the xml meta-information file for the image.

IIPImage

IIPImage is an image web server that implements the Internet Imaging Protocol. Such images are easily recognizable by their tile URLs, which contain FIF=. You can pass an URL containing FIF= to dezoomify-rs to let it download the image.

XLimage

The XLimage dezoomer accepts *.imgf and *.imgi metadata URLs (such as image.imgf?cmd=info).

TopViewer

TopViewer supports Picturae Memorix metadata, thumbnail URLs, and media API responses.

FSI

FSI supports Neptune Labs FSI Server metadata URLs and viewer pages containing an FSI server URL.

LizardTech

LizardTech supports ImageServer calcrgn metadata and generates the corresponding getimage tile requests.

VLS

VLS supports Visual Library Server zoom, pageview, and thumbview URLs.

Hungaricana

Hungaricana support accepts ECW image metadata and follows the image metadata resources exposed by supported gallery pages.

WMTS

WMTS support accepts a capabilities document URL and uses its linked Web Mercator tile matrix set, layer limits, and tile URL template.

ArcGIS

ArcGIS support accepts cached MapServer URLs and follows the service's JSON metadata to its cached tiles.

pnav

pnav support accepts entity URLs, discovers the image JSON metadata, and uses the service's crop requests to assemble the image.

Generic

You can use this dezoomer if you know the format of tile URLs. For instance, if you noticed that the URL of the first tile is

http://example.com/my_image/image-0-0.jpg

and the second is

http://example.com/my_image/image-1-0.jpg

then you can guess what the general format will be, and give dezoomify-rs the following:

http://example.com/my_image/image-{{X}}-{{Y}}.jpg

If the numbers have leading zeroes in the URL (such as image-01-00.jpg instead of image-1-0.jpg), then you can specify them in the url template as follows:

http://example.com/my_image/image-{{X:02}}-{{Y:02}}.jpg

Custom yaml

The custom yaml dezoomer is a powerful tool that lets you download tiled images in many different formats, including formats that are not explicitly supported by dezoomify-rs. In order to use this dezoomer, you'll need to create a tiles.yaml file, which is a little bit technical. However, we have a a tutorial for the custom YAML dezoomer to help you. If you are having troubles understanding the tutorial or adapting it to your use-case, you should get in touch by opening a new github issue.

Command-line options

When using dezoomify-rs from the command-line

…

Multi-Image Selection

Many sources contain multiple zoomable images rather than just one. Dezoomify-rs can handle these cases intelligently:

Automatic Detection

  • IIIF Manifests: When you provide a manifest URL, dezoomify-rs will extract all images and let you choose which one to download
  • Krpano Scenes: Multi-scene Krpano files (like panoramic tours) are processed as separate images
  • Bulk Processing: Text files with multiple URLs are processed sequentially

Interactive Selection

When multiple images are found, dezoomify-rs will show you a list with titles and descriptions:

Found 3 images:
[0] Front cover (2000x3000 pixels)
[1] f. 1r - Gospel of Matthew begins (4000x6000 pixels) 
[

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Rustdeepzoomdezoomifydownloadergoogle-arts-culture

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言