IIIF Curation Viewer

“IIIF Curation Viewer”は、IIIF (International Image Interoperability Framework)準拠の画像ビューワであり、ページ移動やズームといった一般的なビューワが持つ機能に加え、複数の資料から画像の一部を切り取り、収集し、任意の順序で閲覧できる独自の「キュレーション」機能を備えている。

この文書は、本ビューワの画面上に示されていない動作詳細を中心に記述する。その他の情報については、以下の別資料を参照のこと。

目次

動作デモ

活用例

IIIF Curation Viewerを含む多くの活用例については、以下を参照のこと。

基本利用者向け機能

ビューワ画面

ビューワ画面の操作項目
番号 項目名 説明
1 資料名(リンク) 資料名が表示され、押下により関連情報へ遷移する。
Curation API準拠JSONファイルのURLによる表示対象指定時は括弧内にキュレーション名が表示され、押下により関連情報に遷移する。
labelパラメータによるキュレーション名指定時は、括弧内にキュレーション名が表示される。
2 ページナビ(ボタンとプルダウン) 閲覧対象内で前後にコマ移動する。中央部(「表示中のコマ番号 / 閲覧対象コマ数」形式)のプルダウンでコマ指定移動する。
3 サムネイル一覧表示(ボタン) 閲覧対象のサムネイル一覧を表示する。
4 資料ナビ(ボタンとプルダウン) 閲覧対象内で前後の資料に移動する。中央部(「表示中の資料番号 / 閲覧対象資料切替数」形式)のプルダウンで資料指定移動する。
5 元資料閲覧(ボタン) 表示中のコマの「元資料内でのコマ番号 / 元資料のコマ数」形式で表示され、押下により元資料単体(ページ絞り込みなし)での閲覧に遷移する。
6 キュレーションリスト登録/解除(ボタン) 表示中のコマをキュレーションリスト(後述)に登録または登録解除する。
7 キュレーションリスト表示(ボタン) キュレーションリストを表示する。
8 画像ダウンロード(ボタン) 表示中のコマの画像をダウンロードする。
9 キャンバス情報表示(ボタン) 表示中のキャンバス(コマ)へのリンクをはじめとして、マニフェストに記載されたキャンバスに関する各種情報を表示する。
10 情報表示(ボタン) 表示中の資料に関する権利関係やライセンス、ロゴ、マニフェストのURL、メタデータ等の情報を表示する。
11 ヘルプ表示(ボタン) ヘルプ情報を表示する。
12 ビューモード切替(ボタン) キュレーションビューモード/アノテーションビューモード(後述)を切り替える。
13 ズームイン/ズームアウト(ボタン) 表示中のコマをズームイン/ズームアウトする。
14 フルページ表示(ボタン) フルページ表示状態を切り替える。
15 部分矩形領域指定(ボタン) 表示中のコマの一部分を選択する領域指定モードに入る。
領域指定モードでは、表示中のコマをクリックしてドラッグすることにより、コマの一部分を選択できる。領域の選択を表す矩形を、以下「領域選択」という。
領域が選択されれば、編集ボタンと終了ボタンが表示される。
編集ボタンを押下し、領域選択のハンドルをドラッグすることにより、領域選択を変形・移動できる。変更を確定するには適用を押下し、取り消すにはキャンセルを押下する。
終了ボタン押下やコマ移動等により、領域指定モードは解除される。

閲覧対象内での前後のコマ移動は、資料画像の左右両端に表示されるコマ移動用ボタンを用いても行うことができる(一定時間でフェードアウトする)。

キュレーションリスト画面

IIIF Curation Viewer v1.1からは、本ビューワの閲覧対象を指定するリスト(以下「キュレーションリスト」という。)を画面上の操作によって作成できる。

ただし、Web storage (local storage)が利用できないブラウザ環境(ブラウザが「CookieとWebサイトのデータ」を常にブロックする設定になっている場合や、一部のブラウザのプライベートモードなど)では、この機能は利用できない。

本機能が利用できるブラウザ環境では、キュレーションリスト表示ボタンを押下すると、キュレーションリスト画面が表示される。キュレーションリスト画面は、自らリスト登録を行ったコマについて、閲覧順序変更や登録解除等を行える画面である。ここで作成するキュレーションリストは、外部から指定された閲覧対象状態(pagesパラメータやcurationパラメータなどの指定)によらず、独立して保持される。

キュレーションリスト登録ボタンにより、任意のコマをリスト登録したのち、キュレーションリスト表示ボタンを押下すると、以下のようなキュレーションリスト画面が表示される。

キュレーションリスト画面
番号 項目名 説明
1 登録件数 キュレーションリストに登録されたコマの件数。
2 URL(リンク) キュレーションリストに登録されたコマを、リストの順序で閲覧できるURL。
キュレーションリストに、pagesパラメータでは表現できない内容(コマの部分矩形領域(後述)など)が登録されている場合は、非表示となる。
3 サムネイル(画像とボタン) キュレーションリストに登録されたコマのサムネイル。
ドラッグ&ドロップにより、閲覧順序を変更できる。「×」ボタン押下によりリストから削除される。
4 全てクリア(ボタン) キュレーションリストに登録されたコマを全て登録解除する。
5 JSON(ボタン) キュレーションリストをCuration JSON形式で取得する。
6 閉じる(ボタン) キュレーションリスト画面を閉じる。

なお、IIIF Curation Viewer v1.4からは、curationパラメータ指定により読み込んだキュレーションリストを表示したブラウザタブでは、その内容がキュレーションリスト画面に表示され、リストの編集が行えるようになった。

このリストは、タブごとに独立であり、タブを閉じると消去される(curationパラメータ指定によりキュレーションリストを読み込む前に作成していたキュレーションリストがある場合は、その内容が再びキュレーションリスト画面に表示されるようになる)。読み込んだキュレーションリストにない資料からコマを追加したい場合、同じタブでmanifestを開き、コマもしくはコマの一部分をリストに登録する。

ただし、Web storage (session storage)が利用できないブラウザ環境では、この機能は利用できない。

多数のコマを登録する場合、エクスポート先の受け取り容量制限に達する可能性(JSONkeeperエクスポートプラグイン利用時)や、Web storageの割り当て容量制限に達する可能性があるため、ある程度の規模になればJSON形式で取得またはエクスポートを行うことを推奨する。

部分矩形領域指定

IIIF Curation Viewer v1.2からは、表示中のコマの部分矩形領域を選択することができる。この選択は、コマを移動するとクリアされる。

表示中のコマの一部分を選択した状態で、キュレーションリスト登録を行うと、選択領域がキュレーションリストに登録される。キュレーションリスト登録後に、選択領域の編集や削除を行った場合であっても、キュレーションリストに登録済みの内容は維持される。

また、領域選択をクリックすると、ポップアップが表示され、付加的な機能を利用できる。

マニフェスト/キュレーションURLのドラッグ&ドロップ、ペースト

IIIF Curation Viewer v1.3からは、マニフェストURLのドラッグ&ドロップに対応している。

ドラッグ&ドロップにより資料の閲覧を開始するには、ビューワ中央の領域にマニフェストURLをドラッグし、領域の背景色が変化すればドロップする。

IIIF Curation Viewer v1.11からは、マニフェストURLのペースト(貼り付け)に対応している。

ペーストにより資料の閲覧を開始するには、マニフェストURLをコピー後、ビューワ中央の領域をクリックし、領域の枠が変化すればキーボード操作(Ctrl+Vなど)やコンテクストメニュー等によりマニフェストURLをペーストする。

ただし、ビューワ設置者により表示が認められていないマニフェストURLをドロップやペーストした場合は、表示されない。

IIIF Curation Viewer v2.0からは、キュレーションURLのドラッグ&ドロップおよびペーストに対応している。

GET引数を含むURLであって、GET引数の値としてマニフェストURL(パラメータ名:manifest)やキュレーションURL(パラメータ名:curation)を持つものをドロップまたはペーストしても良い。

プラグインによる機能拡張

IIIF Curation Viewer v1.4からは、本ビューワにプラグインを導入することで、利用者のニーズに応じた機能拡張が可能となっている。プラグインにより拡張される機能の例についてはプラグイン解説資料を参照のこと。

複数コンテクストでの注目点閲覧

IIIF Curation Viewer v1.8からは仕様変更がなされたため注意

IIIF Curation Viewer v1.7までの仕様

IIIF Curation Viewer v1.5からは、URL(GET引数)にxywhパラメータを指定することで、指定領域を拡大して表示するとともに、境界ボックスを描画することができる。

キュレーションリストはマニフェスト/キャンバス横断コンテクストでの注目点閲覧、xywhパラメータはキャンバス内コンテクストでの注目点閲覧という相補的な関係を持つ。

なお、IIIF Curation Viewer v1.7からは、URL(GET引数)にzoomパラメータを指定することで、指定領域の拡大表示のみを行うことができる(xywhパラメータ指定と異なり、境界ボックスは描画されない)。

xywhパラメータの指定は、注目領域を明示したい場合に用い、zoomパラメータの指定は、注目領域を明示する意図なく一定の領域を拡大表示したい場合に用いることを想定している。

IIIF Curation Viewer v1.8からの仕様

IIIF Curation Viewer v1.8からは、URL(GET引数)にxywhパラメータを指定することで、指定領域の拡大表示が行われ(境界ボックスの描画なし)、xywhパラメータに加えてxywh_highlightパラメータを指定することで境界ボックスが描画される仕様に変更された。v1.7におけるzoomパラメータ指定とv1.8からのxywhパラメータ指定は同じ挙動となり、v1.8ではzoomパラメータは廃止された。

外部サービスの利用

IIIF Curation Viewer v1.6からは、一部のプラグインにおいて、閲覧時に外部サービスの利用を選択できるようになっている。詳細はプラグイン解説資料を参照のこと。

アノテーションビューモード

IIIF Curation Viewer v1.7からは、キュレーションを閲覧する際、従来の表示方式(「キュレーションビューモード」という)に加え、資料画像上に文字やアイコン画像などのマーカーを表示可能な「アノテーションビューモード」が利用できるようになっている。詳細はアノテーションビューモード解説資料を参照のこと。

アノテーションビューモードでは、マーカー表示調整パネルが表示され、マーカーの表示位置、不透明度、サイズを調整できる。

IIIF Curation Viewer v1.9からは、文字マーカー表示について、ズームレベルに応じた表示サイズの拡大縮小機能、フォントサイズの自動調整機能、背景色の自動調整機能などが利用できる。

キュレーション内で文字マーカーに境界ボックスが与えられていると考えられる場合、文字マーカーについてキャンバス単位のフォントサイズ自動調整が行われるとともに、文字マーカー表示設定パネルが表示される。

文字マーカー表示設定パネルでは、従来の表示方式(標準表示モード)に加え、上書き表示モードが選択できる。上書き表示モードでは、資料画像に基づく文字マーカー背景色の自動調整、文字マーカー文字色の変更が行われる。

IIIF Curation Viewer v1.13からは、アノテーションビューモード専用キュレーションの矩形枠線マーカーについて、サイズや位置を編集する機能が利用できる。当該機能が利用可能であるかは、ビューワ設置者の設定によって異なる。

IIIF Image API非対応リソース

IIIF Curation Viewer v1.7からは、IIIF Image APIに非対応のリソースを含むマニフェストを表示できるようになっている。ただし、IIIF Image APIが利用できないことにより、外部サービスの利用など一部機能に制限がある。

マニフェスト/キュレーションの説明表示機能

IIIF Curation Viewer v1.10からは、マニフェスト/キュレーションに記載された説明(descriptionプロパティ)の表示に対応している。画面上の操作により表示することに加え、インストール時のオプション指定またはURL(GET引数)指定により、マニフェスト/キュレーション読み込み時に自動的に表示することも可能であり、ミュージアム展示等での活用を想定した機能となっている。

マニフェストの情報表示

IIIF Curation Viewer v1.12からは、情報表示ボタンの押下により、従来の表示内容(表示中の資料に関する権利関係やライセンス、ロゴ、マニフェストのURL等)に加え、マニフェストに記載されたメタデータ(metadataプロパティ)が表示される。

また、マニフェストのURL表示部分を、他のIIIFビューワにドラッグ&ドロップすると、当該ビューワを用いて資料を表示することができる(ただし、当該ビューワがドロップに対応している場合に限る)。

キャンバスの情報表示

IIIF Curation Viewer v1.14からは、キャンバス情報表示ボタンの押下により、表示中のキャンバス(コマ)へのリンクをはじめとして、マニフェストに記載されたキャンバスに関する情報(キャンバスのラベルや説明、メタデータ)が表示される。

IIIF Image/Presentation API 3.0対応

IIIF Curation Viewer v1.15からは、IIIF Image API 3.0およびIIIF Presentation API 3.0に基づいて提供される画像資料の表示に対応している。

キーボードショートカット

キー名 動作
右矢印 マニフェスト:次のコマまたは前のコマへ移動(マニフェスト設定による)
キュレーション:次のコマへ移動
サムネイル一覧では、次のページへ移動
左矢印 マニフェスト:前のコマまたは次のコマへ移動(マニフェスト設定による)
キュレーション:前のコマへ移動
サムネイル一覧では、前のページへ移動
Space 次のコマへ移動
Back space 前のコマへ移動
f フルページ表示切り替え
t サムネイル一覧表示/非表示切り替え
c キュレーションリスト表示/非表示切り替え
l(小文字エル) キュレーションリスト登録/解除切り替え
+ (Numpad) ズームイン
- (Numpad) ズームアウト

高度利用者向け機能

URL(GET引数)による動作指定

本ビューワは、URLの引数を活用して動作を細かく制御できる点に特徴がある。例えば、pagesパラメータでの列挙や、Curation APIに準拠して閲覧対象を記述したJSONファイルを用いて、閲覧対象を指定することができる。以下は指定できるパラメータのリストである。

表示対象指定(いずれか必須)

パラメータ名 内容 値の形式 補足
curation Curation APIに準拠するJSONファイルのURLによる表示対象指定 URL Curation APIを参照
manifest(*1) Manifest JSONファイルのURLによる表示対象指定 URL ビューワ設置者の設定により表示が認められたURL。
表示対象が提供するIIIF Image API準拠レベルにより、ビューワの機能が一部制限されることがある。
pages(*1) identifierによる表示対象指定 <identifier>(/<pages>)?(:<identifier>(/<pages>)?)* ここで、
<identifier> ::= [0-9]{9}(*2)
<pages> ::= <page num>(-<page num>)?(,<page num>(-<page num>)?)*
<page num> ::= -?[0-9]+
<page num>は、1から始まるページ番号、負数は最終ページからの位置。
iiif-content(*4) IIIF Content State APIによる表示対象指定 string v1.11では、文字列がHTTP(S) URIである場合に限り、Manifest JSONファイルのURLが指定されたものとして扱う。
v2.0からは、文字列がHTTP(S) URIである場合に限り、Curation/Manifest JSONファイルのURLが指定されたものとして扱う。

*1:v1.3以降では、ビューワ設置者の設定により利用不可の場合もある。

*2:人文学オープンデータ共同利用センターのウェブサイト上で提供されている「日本古典籍データセット」の例。v1.3以降では、ビューワ設置者の設定により異なる。

*4: v1.11以降

表示ページ指定(省略可)

パラメータ名 内容 値の形式 補足
pos 表示ページ指定 [0-9]+ 表示対象のうち、何番目のページを画面に表示するかの数値
(1から始まる通し番号)
canvas 表示ページ指定 string 表示対象のうち、画面に表示するページ(Canvas)の@id
manifestパラメータ指定時のみ有効

表示領域指定(省略可)

v1.8からの仕様

パラメータ名 内容 値の形式 補足
xywh 初期拡大領域指定 [0-9]+,[0-9]+,[0-9]+,[0-9]+ 初期状態で拡大して表示する領域
xywh_highlight 初期拡大領域に対するハイライト指定 "border" "border":xywhパラメータで指定された領域に境界ボックスを描画する

v1.7までの仕様

パラメータ名 内容 値の形式 補足
xywh 初期注目領域指定 [0-9]+,[0-9]+,[0-9]+,[0-9]+ 初期状態で拡大して表示し、境界ボックスを描画する領域
zoom 初期拡大領域指定 [0-9]+,[0-9]+,[0-9]+,[0-9]+ 初期状態で拡大して表示する領域

表示状態指定(省略可)

パラメータ名 内容 値の形式 補足
description 説明表示 1 1:マニフェスト/キュレーションの説明(descriptionプロパティ)を表示した状態でページを開く(*3)
tn サムネイル一覧表示 1 1:サムネイル一覧を表示した状態でページを開く(*3)
full フルページ表示 1 1:フルページ状態でページを開く(*3)

*3:パラメータ同時指定時の優先度は、説明表示>サムネイル一覧表示>フルページ表示。説明表示とサムネイル一覧表示等が同時に指定された場合であって、表示すべき説明がない場合は、サムネイル一覧表示等の指定が効力を発する。

その他(省略可)

パラメータ名 内容 値の形式 補足
lang 表示言語指定 "ja"など "ja"または未指定:日本語表示(*5)
上記以外("en"など):英語表示(*6)
label キュレーション名指定 URLエンコード(UTF-8)文字列 キュレーション名として表示する文字列
curationパラメータとの同時指定不可

*5:v1.6からは、未指定の場合はブラウザの言語設定が日本語であれば日本語表示、それ以外であれば英語表示

*6:v1.15からは、"en"以外の指定がなされた場合、指定言語による情報(タイトルや説明など)がマニフェストに含まれていれば当該内容の情報表示(v1.14までは英語指定にフォールバック)

記述例

  1. 単一資料『唐糸草紙』の全ページ表示のケース(通常表示)
  2. 単一資料『唐糸草紙』のp.23-50のみ表示のケース
  3. 単一資料『唐糸草紙』のp.6,9,11,14,19のみ表示のケース
  4. 単一資料『唐糸草紙』の末尾5ページのみ表示のケース
  5. 単一資料『唐糸草紙』を逆順に全ページ表示のケース
  6. 単一資料『唐糸草紙』で一部のページを重複表示のケース
  7. 複数資料『画本虫撰』『唐糸草紙』の全ページ表示のケース
  8. 複数資料『画本虫撰』のp.1,12,24と『唐糸草紙』のp1,9,11のみを表示のケース
  9. Curation API準拠JSONファイルの読み込み(表示対象は8.に一部矩形領域指定を加えたもの)
  10. 単一資料『唐糸草紙』のp.6,9,11,14,19のうち、p.11(3番目)を最初に表示するケース
  11. 単一資料『唐糸草紙』のp.6,9,11,14,19のうち、p.11(3番目)を最初にフルページ表示するケース
  12. 単一資料『唐糸草紙』の全ページ表示(英語)のケース
  13. 複数資料『画本虫撰』のp.1,12,24と『唐糸草紙』のp1,9,11のみを表示(英語)のケース

制限事項

本ビューワのcr:Curationに関する実装では、Curation API拡張のベースとしたIIIF Presentation API 2.1の全仕様には対応していないが(Range内のrangesプロパティには未対応。Rangemembersプロパティ内ではCanvasのみ対応、members内のRangeの入れ子は未対応など)、Curationの仕様としてこれらを禁じるものではない。

本ビューワのsc:Manifestに関する実装は、IIIF Presentation APIの全仕様に対応したものではない。

ライセンス

IIIF Curation Viewer v2.0

Copyright 2016 Center for Open Data in the Humanities, Research Organization of Information and Systems
Released under the MIT license

Core contributor: Jun HOMMA (@2SC1815J)

Licenses of open source libraries, see acknowledgements.txt

開発履歴

バージョン2.0 (2024-11-11)

  1. IIIFマニフェスト/キュレーションURLのドラッグ&ドロップ、ペースト対応を改良。
  2. 画面表示文言の見直しを実施。

バージョン1.15 (2024-08-27)

  1. IIIF Presentation API 3.0のマニフェスト表示に対応。

バージョン1.14 (2022-10-01)

  1. キャンバスの情報表示機能を追加。

バージョン1.13 (2022-07-20)

  1. 矩形枠線マーカーのサイズや位置の編集を可能とするインストールオプションに対応。

バージョン1.12 (2022-07-14)

  1. マニフェストのメタデータ表示機能を追加し、情報表示を改良。

バージョン1.11 (2022-04-12)

  1. IIIFマニフェストURLのペーストに対応。
  2. IIIF Content State APIの一部に対応。

バージョン1.10 (2021-04-19)

  1. マニフェスト/キュレーションの説明(descriptionプロパティ)表示機能を追加し、以下に対応。
    1. インストールオプションやURL指定による初期表示
    2. 画面操作による任意時点表示
  2. 「アノテーションビューモード」におけるコマ移動では、アノテーション領域全体が含まれるように拡大縮小/移動して表示する仕様に変更。
  3. 大規模なキュレーションに対するキュレーションリスト画面の表示および挙動を改良。

バージョン1.9 (2020-05-29)

  1. 「アノテーションビューモード」の文字マーカーに対して、以下の機能を追加。
    1. キャンバス単位のフォントサイズ自動調整
    2. ズームレベルに応じた表示サイズ・位置調整
  2. 「アノテーションビューモード」の文字マーカーに対して、以下の機能を有する上書き表示モードを追加。
    1. 文字マーカー背景色の資料画像に基づく自動調整
    2. 文字マーカー文字色の変更
  3. マニフェスト/キュレーションのダウンロードに伴うエラーメッセージの明確化。
  4. 選択サイズ座標入力プラグインを追加し、部分矩形領域指定に対する座標入力機能を追加。

バージョン1.8 (2020-03-25)

  1. 「切り取り画像エクスポートプラグイン」「キュレーションリスト上書きエクスポートプラグイン」の機能を追加。
  2. 「キュレーションメタデータ編集プラグイン」の挙動を改良。
  3. 「複数コンテクストでの注目点閲覧」の仕様を変更。

バージョン1.7 (2019-11-05)

  1. 「アノテーションビューモード」により、キュレーションされた領域を枠で囲むアノテーション風の表示に対応。また、キュレーション領域に画像や文字マーカーを表示し、その表示位置や透明度などをユーザが変更できる機能にも対応。
  2. 「アノテーションビューモード」を実現するために、Curation APIの仕様を拡張。
  3. IIIFマニフェストに含まれるIIIF Image APIに非対応のリソース(例えばJPEG画像)などの表示にも対応。
  4. ブラウザのローカルストレージに対する圧縮保存を用いて、より大きなキュレーションの表示に対応。
  5. デフォルト選択サイズ設定プラグインに、最小サイズを指定する機能を追加。
  6. その他、利便性の向上につながる修正をいくつか実施。

バージョン1.6 (2019-06-24)

  1. 切り取り画像エクスポートプラグインを用いた外部サービス連携機能に対応。
  2. デフォルト表示言語にブラウザの言語設定を反映させる機能に対応。

バージョン1.5 (2019-03-25)

  1. URLに指定したxywhに合わせた表示方法に対応。
  2. ズームイン/ズームアウトボタン等を自動的に隠すインストールオプションに対応。

バージョン1.4 (2018-04-04)

  1. プラグインによる機能拡張に対応。
  2. 外部キュレーションのリスト編集に対応。

バージョン1.3 (2017-10-11)

  1. IIIF対応を拡大し、外部IIIFサイト表示に対応。
  2. マニフェストURLのドラッグ&ドロップに対応。
  3. インストールオプション設定に対応。

バージョン1.2 (2017-06-02)

  1. IIIF時系列拡張仕様(Timeline/Cursor API)に対応。
  2. 画像の部分領域キュレーションに対応。

バージョン1.1 (2017-04-03)

  1. 画面操作によるキュレーションリスト作成に対応。

バージョン1.0 (2016-11-10)

  1. IIIF拡張仕様(Curation API)に対応。