Dezoomify extracts full high-resolution images from online zoomable image interfaces. It works with several zoomable image tools, from several different websites (see the list below). It takes as input the URL of a a zoomable image and gives as output an image that you can download (by right-clicking on it, and choosing Save Image as...).
In order to find the URL of the zoomable that dezoomify requires, you can install the dezoomify browser extension. Alternatively, you can also try to find the zoomable image URL yourself.
If you are not interested in the source code and just want to assemble tiles of (dezoomify) a zoomify-powered image, go there : unzoomify an image
If you have problems while downloading an image, then read the FAQ.
Your bug reports and feature requests are welcome! Please go the the Github issue page of the project, and explain your problem. Please be clear, and give the URL of the page containing the image dezoomify failed to process.
The following formats are supported by dezoomify:
- Zoomify : Most common zoomable image format. dezoomify used to support only this, hence the name.
- Deep Zoom : Zoomable image format created by Microsoft.
- Arts & Culture (formerly Google Art Project): a cooperation between google and several international museums. More info about the controversy around this dezoomer..
- IIIF: The International Image Interoperability Framework, used on many websites, including Austrian National Library, National Gallery, National Library of Israel, and National Library of Scotland.
- Museo Nacional del Prado: artwork pages using Prado's OpenSeadragon image viewer.
- Zoomify single-file format : Less common format used by zoomify, where all tiles are in a single .pff file, and are queried through a java servlet.
- XLimage, a zoomable image format developed by an Italian company.
- TopViewer, also named Memorix Maior picture viewer, used by Picturae Memorix sites.
- krpano Panorama Viewer, mainly used in panoramic images and interactive virtual tours.
- FSI Viewer, zoomable image server by NeptuneLabs GmbH.
- LizardTech ImageServer, for direct ImageServer
calcrgnURLs. - Visual Library Server, by semantics
- Micr.io's non-IIIF format.
- Hungaricana a format found only on the Hungarian Cultural Heritage Portal, that hosts half a million images.
- WMTS, the OpenGIS Web Map Tile Service standard.
- Mnesys image viewer.
- PNAV image viewer, used by several museum collection sites.
The most prominent supported websites with live compatibility tests include :
- Arts & Culture (artsandculture.google.com)
- Czech Digital Library (api.ceskadigitalniknihovna.cz)
- Memoire des hommes (memoiredeshommes.defense.gouv.fr)
- London Museum collections (londonmuseum.org.uk)
- Liechtenstein Collections (liechtensteincollections.at)
- National Gallery (nationalgallery.org.uk)
- National Gallery of Victoria (ngv.vic.gov.au)
- Austrian National Library (onb.ac.at)
- Philadelphia Museum of Art (philamuseum.org)
- CSNTM manuscripts (collections.csntm.org)
- National Library of Australia (nla.gov.au)
- National Library of Israel (nli.org.il)
- National Library of Scotland (nls.uk)
- Academia Sinica Bronze Rubbings (bronze.asdc.sinica.edu.tw)
- Westchester County Archives (collections.westchestergov.com)
- Bibliotheques specialisees de Paris (bibliotheques-specialisees.paris.fr)
- FSI Viewer examples (neptunelabs.com)
- LizardTech ImageServer on Alabama Maps (cartweb.geography.ua.edu)
- Geographicus (geographicus.com)
- krpano examples (krpano.com)
- Memorix TopViewer sites (images.memorix.nl)
- Oklahoma State University Digital Collections (dc.library.okstate.edu)
- OpenSeadragon Zoomify examples (openseadragon.github.io)
- PNAV collection sites, including catalog.shm.ru, collection.pushkinmuseum.art, and collection.ethnomuseum.ru
- University of Washington Digital Collections Mirador (digitalcollections.lib.washington.edu)
Dezoomify also has a generic dezoomer. If the zoomable image format is simple enough, you just have to enter a pattern of tile URL, and dezoomify will be able to work with it.
The aim of the script is to do as much as possible in Javascript (with the HTML5 <canvas> tag), and only the network-related stuffs on the server side. The only little piece of server-side code that remains in the code is just a proxy, used to circumvent the same-origin policy.
The proxy is implemented in Javascript as a Cloudflare Pages Function (functions/proxy.js) and reused by the Node app through node-app/proxy.js.
This script on wikimedia : Zoomify in the help about zoomable Images on wikimedia
The browser app is static, but it expects a /proxy endpoint. Cloudflare Pages serves functions/proxy.js at that route. The deterministic test server in tests/fixture-server.js also provides a fixture-backed /proxy route for local tests.
Run deterministic tests from tests:
npm testRun live compatibility checks manually:
npm run test:liveLive compatibility tests intentionally touch real websites and run the browser app against each URL. They fail when automatic detection, metadata loading, or the first tile load breaks. Do not use live-only behavior as the sole regression coverage for a dezoomer; keep deterministic fixtures in tests/dezoomers.spec.js for protocol behavior, and use tests/live-compat.spec.js to notice when real-world examples have changed.
Copyright © 2011-2017 Lovasoa
This file is part of Dezoomify.
Dezoomify is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
Dezoomify is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Dezoomify; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA*/


