My first week working on the Fellowship was spent identifying, testing, and documenting some recent issues with Alma Digital's implementation of the Universal Viewer. The Universal Viewer is designed to work with IIIF-enabled images, allowing them to be shared and embedded in other platforms, but I've recently encountered several problems with this functionality.

  1. Cannot copy embed code from the viewer to create an iframe in an external resource
  2. Zoom/position coordinates (xywh values) missing from url (viewing position cannot be captured by share link)
  3. Cannot load manifest to most IIIF viewers when pasting to prefixes

Last month, I discovered that a resource guide I'd helped a student build back in May, using embedded IIIF images from Alma Digital, was now failing to render any of the iframes. Facing a deadline and being unable to dedicate sufficient time to explore this in depth, I simply removed the blank iframes and we launched the resource without embedded images, which was much poorer for it. At the start of June, I recorded a presentation in which I demonstrated being able to zoom into a detail of an object, copy a share link from Universal Viewer, and paste the same viewing position into a new tab. When I gave the same presentation a week later, the pasted link reset to the original view.

While this has been a frustrating start to the project (which entirely depends on being able to re-use Alma Digital objects in third party tools), it's an example of the way in which the Fellowship is giving me much-needed time to unpick issues like this - which affect not just Cardiff University but all Alma Digital customers. In addition, as this blog is hosted on GitHub, it gives me the ability to clearly show and demonstrate behaviour, not just describe it, complete with source code.

This post will outline and demonstrate the features no longer functioning in the Universal Viewer, as of early June, in the hope that Ex Libris, Alma Digital users, or any IIIF experts out there may be able to offer some advice on any recent updates or conflicts that may be causing this.

1. Cannot copy embed code from the viewer to create an iframe in an external resource. Examples below:

Embedding at 640x480 - content won't load

Embedding at 800x600 - content loads but won't render correctly. The content will only show after clicking << at the top left to restore the metadata panel, clicking >> to restore the contents panel, then clicking on a thumbnail to load the image.

However, scrolling the browser's zoom in and out causes the images to load.

2. Zoom/position coordinates (xywh values) missing from url (viewing position cannot be captured by share link). Option to download 'current view' still works.

In this example from the National Library of Wales, xywh values in the url allow the capture of particular section and zoom level of an image, in order to re-use it elsewhere. It was formerly possible to do this in Alma Digital, but now the url is static when scrolling in and out of the viewer.

3. Cannot load manifest to alternative IIIF viewers when pasting to prefixes

It used to be possible to paste the manifest onto a viewer prefix to load it into an alternative viewer. The following viewers no longer recognise the manifest as valid:

  • https://universalviewer.io/uv.html?manifest=
  • https://demo.tify.rocks/demo.html?manifest=
  • http://codh.rois.ac.jp/software/iiif-curation-viewer/demo/?manifest=
  • http://www.getty.edu/art/collection/static/viewers/mirador/?manifest=

Loading a manifest to the latest version of the Universal Viewer (directly from their website), with the prefix: https://uv-v4.netlify.app/#?manifest= works, and has a responsive url. It's now possible to copy the embed code, and render it successfully in an iframe. The correct page is replicated but not the canvas location/zoom (I had zoomed into the signature on page 2 before copying the embed code):

However - images, as opposed to texts, will neither load correctly nor embed.

I've tested the above across other Alma Digital implementations, and all of the above issues are being replicated identically for those customers too - e.g. embed behaviour:

National History Museum:

University of Aberdeen: