May 24, 2018

Serving Up Really Large Images

California PoppyRecently I came across some open source software for serving really large images on the web, and as the proprietor of a photography web site, I was immediately intrigued. What if, I thought, I could put up the full versions of my photos (multi-megapixel) for viewing and discovery, but not for download? This is because although I will send anyone the full version for free for their personal use, I still charge for commercial use. By displaying the large files in a web browser as a tiled image, the full file cannot be downloaded without a great deal of difficulty.

The project I had discovered was IIPImage. Although the usual use for this software suite is for serving up images that you typically don’t want to load into your web browser as a single, huge image (for example, satellite imagery), I thought it might still have use in my context, or indeed in the context of libraries that want to serve up really large digital images of archival content.

So I set it up and started experimenting. One thing I immediately discovered is that I wanted to have much larger images. My 4-to-10 Megapixel images just weren’t large enough. I wanted more pixels. Unless you have images that are much too large to display on a screen without a great deal of scrolling, using the IIPImage infrastructure is likely overkill. But I still think it’s fun, and I will be adding more full images to my site as I get the time.

Some other things issues I ran into while doing this:

  • I needed to download and install JPEG 2000 support in Photoshop. I have CS4 and it doesn’t come natively in that release.
  • The Photoshop plug-in wants to give JPEG 2000 images the “.jpf” extension by default. However, I found that if you save it in “jp2 compatible” mode, if you just change the extension to “.jp2” it works. I needed to do this since either the IIP server or client expects the image to have that extension.
  • I put the jp2 images in a directory that isn’t accessible via a web client to protect them from downloading. But since the images are fetched by the IIP server, you can specify any directory on your server and it will find them and display them in the IIP viewer.
  • I used the IIPMooviewer since it uses Javascript instead of relying on Flash. There is also a Java option. I don’t have any experience with the other client options, so it’s possible one of those would work better.

All of this has me lusting after a new camera, with a lot more pixels to capture and throw up on the web. When it comes to RAM, love, or pixels, it’s difficult to have too much.

Roy Tennant About Roy Tennant

Roy Tennant is a Senior Program Officer for OCLC Research. He is the owner of the Web4Lib and XML4Lib electronic discussions, and the creator and editor of Current Cites, a current awareness newsletter published every month since 1990. His books include "Technology in Libraries: Essays in Honor of Anne Grodzins Lipow" (2008), "Managing the Digital Library" (2004), "XML in Libraries" (2002), "Practical HTML: A Self-Paced Tutorial" (1996), and "Crossing the Internet Threshold: An Instructional Handbook" (1993). Roy wrote a monthly column on digital libraries for Library Journal for a decade and has written numerous articles in other professional journals. In 2003, he received the American Library Association's LITA/Library Hi Tech Award for Excellence in Communication for Continuing Education. Follow him on Twitter @rtennant.


  1. I just played with their demo and IIPImage looks cool. I wish the LOC would look into adopting it. Their antiquated JPEG2000 viewing system is so awkward to use I started downloading the jp2 files and converting them on my PC so I could explore the maps and other images more easily. I am looking forward to an eventual open source solution that works as smoothly as Microsoft’s site.

  2. Chris Rusbridge says:

    “When it comes to RAM, love, or pixels, it’s difficult to have too much” Ahem, I might agree with the first two. But pixels? It’s easy to have too much, and it hurts! It makes processing more time-consuming and sluuuuugggggggiiiiiiish. It takes up much more space (especiall in raw), and so eats yur hrad drive and your backups. And what does it get used for mostly? Either looking at on-screen (where you can’t comfortably get more than a few Mp), or printed at A3 or less (works out at about 17 Mp based on a 300 dpi printer). We absolutely need to get over the Mp wars, unless we’re into serious commercial photography for very large format use!

    Sorry about that!

  3. Chris, no worries, you bring up some excellent points. I certainly feel the pixel load on my computer that seems to rapidly run out of space. However, storage (for example, external hard drives) continue to drop in price (almost shockingly so) and therefore the unit cost of storing more pixels, I would argue, continues to fall as well. Meanwhile, our displays grow in resolution each year, and also get physically larger, so they are more able to do useful work with said pixels. I can remember when I thought 4 megapixels were the bees knees, but with 4MP you were never going to actually see the knees of a bee. Now with 16MP, maybe so…

  4. Bernie Sloan says:

    Nice photo of a California Poppy!