Skip to content

How to download full resolution images from an IIIF compatible server

Ophir LOJKINE edited this page May 5, 2021 · 8 revisions

IIIF

The International Image Interoperability Framework is a zoomable image framework that has an open API.

There are several server that are compatible with this open API, including Loris and IIPImage. These servers are often used to display zoomable images on websites.

Often, people want to use dezoomify, because websites offer only zoomable versions of their images, and no direct download links to full-quality images.

However, the API specifies a way to access full-size images directly, without having to use an external tool such as dezoomify.

How to download full-quality images

You just have to find the adress of the server that serves their zoomable images, and request it the full-size image.

Find the server URL and download the image

  • Open the web page containing your zoomable image.
  • Open your browser's network console. (On firefox Ctrl-Shift-Q, or Tools > Web Development > Network).
  • On the bottom console that just opened, select the Images tab.
  • Zoom into your zoomable image.
  • You should see image tiles appear. Right-click on one of them, and choose Open in a new tab.
  • Check that the URL of the tab that just opened has the form {scheme}://{server}{/prefix}/{identifier}/{region}/{size}/{rotation}/{quality}.{format}.
  • For instance, this might be http://libimages.princeton.edu/loris/pudl0030%2F021%2F00000001.jp2/2048,2048,1024,1024/1024,/0/native.jpg.
  • In that case, the region is 2048,2048,1024,1024 and the size is 1024,
  • Replace the region by full, the size by full and the quality by native.
    • In our previous examples, that gives http://libimages.princeton.edu/loris/pudl0030%2F021%2F00000001.jp2/full/full/0/native.jpg
  • And voilà! You found the url of the full-quality image.

If maximum size is limited

An IIIF server can be configured to limit the maximum size of downloaded images. In that case, you may want to use dezoomify on that image.

If you are in that case, follow the instructions above, and once you get the tiles URL ({scheme}://{server}{/prefix}/{identifier}/{region}/{size}/{rotation}/{quality}.{format}), enter it into dezoomify in the following form: {scheme}://{server}{/prefix}/{identifier}/info.json.

Example

If an image tile is found at

http://libimages.princeton.edu/loris/pudl0030%2F021%2F00000001.jp2/2048,2048,1024,1024/1024,/0/native.jpg

than you can submit the following to dezoomify:

http://libimages.princeton.edu/loris/pudl0030%2F021%2F00000001.jp2/info.json

If dezoomify freezes

If you are dealing with a very large image, you can follow the following specialized instructions on how to handle huge images.