Skip to content
spillorg edited this page Nov 9, 2016 · 12 revisions

API IIIF

Contexte

L'API IIIF (pour International Image Interoperability Framework) est une API standardisée par le consortium IIIF ayant comme objectif de permettre la manipulation homogène d'images indépendamment de leurs localisations physiques et des établissements qui les hébergent.

Il s'agit de définir, pour des grands entrepôts de documents numériques des interfaces permettant l'interopérabilité de leurs images (manuscrits, photographies, estampes, pages de livre) en fournissant des métadonnées sur ces documents et des verbes de manipulation des images.

La Bibliothèque nationale de France, en tant que participant à cette communauté IIIF, propose l'accès à l'intégralité des images qui composent sa bibliothèque numérique Gallica, ce qui représente plus de 3,5 millions de documents et plus de 100 millions d'images.

L'API IIIF contient plusieurs ensembles de spécifications :

  • L'API Image
  • L'API Présentation
  • L'API de recherche
  • L'API d'authentification (draft)

Documentation

La documentation complète de l'API est présentée sur le site du consortium : http://iiif.io Les restrictions à la BnF sont les suivantes :

  • L'API Image (actuellement en version 2.1 de la spécification) - API implémentée en version 2.0 à la BnF
  • L'API Présentation (actuellement en version 2.1 de la spécification) - API implémentée en version 2.0 à la BnF
  • L'API de recherche (actuellement en version 1.0 de la spécification) - API non implémentée à la BnF

API Images

L'API images est une API Restfull. Pour l'utiliser, il est nécessaire d'utiliser la syntax d'accès suivante : {scheme}://{server}{/prefix}/{identifier}/{region}/{size}/{rotation}/{quality}.{format} .

  • Le scheme est le protocole utilisé ("http" à la BnF)
  • Le server correspond au nom de l'hôte ("gallica" à la BnF)
  • Le prefix à la localisation du service ("iiif" à la BnF)
  • L'identifier est l'dentifiant ark du document ou d'une page du document (par exemple ark:/12148/btv1b7711259g)
  • La regionest la zone sélectionnée (rectangle) dans l'image source (par exemple "3976,3143,870,618" pour un rectangle de 870 pixels de largeur, pour 618 de hauteur et ayant comme coordonnées, en pixels 3976 et 3143.
  • La sizeest la taille de l'image générée en pixels
  • La rotation correspond à un angle de rotation pour l'image cible (en degrés, par exemple "90")
  • La quality correspond à une transformation possible de l'image (par exemple "native" pour le même format que l'original niveaux de gris, noir et blanc, couleur)
  • Le formatcorrespond au format de l'image cible souhaité (par exemple PNG ou JPG).

Voici quelques exemples qui permettent d'illustrer ce qu'il est possible de faire avec cet API de transformation.

Sélection d'une partie du document.

A partir du document suivant, accessible sur Gallica, présentant [un récital d'Artha Franklin] (http://gallica.bnf.fr/ark:/12148/btv1b90017179/f15.item), il est possible de n'obtenir qu'une partie de l'image à travers l'API: http://gallica.bnf.fr/iiif/ark:/12148/btv1b90017179/f15/0,1900,2400,1200/full/0/native.jpg

Difficultés

Clients de l'API

Clone this wiki locally