Image API הוא ממשק RESTFul שמאפשר שליפת העתקים דיגיטליים מסוג תמונה וכן מידע אודותם.
תיעוד הממשק המלא נמצא כאן: http://iiif.io/api/image/2.1
למעשה, בכל פנייה מיוצרת עבורכם, tailor-made and on-the-fly, תמונה שעונה על בקשתכם!
בעמוד זה תמצאו תיאור של שני השירותים הבאים:
לפני בקשת התמונה עליכם לבקש metadata אודות התמונה, באמצעות השירות Image Information (שירות המפורט בחלק השני של עמוד זה). שירות זה מספק מידע חשוב כמו גודל התמונה המקורית וכן מפרט מה ניתן לבקש מה-Image API ומה לא ניתן. לדוגמה, האם ניתן לבקש סיבוב (rotation) ואם כן איזה סוג (רק בכפולות של 90 או כל ערך), מה הגודל המקסימלי של תמונה שניתן לבקש וכו'.
אחר כך, כל שנותר לכם הוא לבקש את התמונה עצמה באמצעות השירות Image Request.
שימו לב! ישנן מגבלה גלובלית לגודל תמונה (פרמטר size) של 576 פיקסלים.
כדי להציג תמונה גדולה יותר, עליכם לבקש אותה ב-tiles. למעשה, אנו מעודדים אתכם להשתמש ב-tiles תמיד.
מה הרעיון של tiles? לפרוס אתהבקשה של התמונה ל-9 tiles (לדוגמה), כאשר כל tile זו בקשת נפרדת מה-Image API. גודל tile אידאלי הוא 256x256 פיקסלים. בקשת חיתוך התמונה ל-tile מתבצעת באמצעות שימוש בפרמטר region (ראו להלן).
משיכת תמונה גדולה באמצעות חלוקתה לתמונות קטנות (tiles) מאפשרת חוויית משתמש טובה יותר.
הפנייה אליו נעשית באופן הבא:
http://iiif.nli.org.il/IIIFv21/{identifier}/{region}/{size}/{rotation}/{quality}.{format}
מזהה ההעתק הדיגיטלי שרוצים לגשת אליו.
בפועל, אתם תקבלו את ה-URL המלא של הגישה ל-Image API מוטמע בתול ה-Manifest כאשר פרמטר זה יהיה מצויין מראש.
האיזור של התמונה שאתם רוצים לקבל.
בדרך כלל תרצו לבקש אחד מהשניים:
מימדי התמונה שאתם רוצים לקבל (width,height).
אפשרויות נפוצות:
שימו לב! לא ניתן לבקש גדלים שחורגים מ-576 פיקסלים. לכן, יש לרנדר את הבקשה שלכם ע"י tiles באמצעות שימוש בפרמטר region (ראו הסבר כללי בתחילת עמוד זה)
סיבוב התמונה (במעלות) עם כיוון השעון
שימו לב! ניתן לבצע "מראה" ע"י הוספת ! לפני הערך של הסיבוב
האם רוצים לקבל את התמונה בצבעים המקוריים (default) או בצבעי אפור (gray).לרוב כמובן שתשתמשו ב-default.
פורמט התמונה שברצונכם לקבל. כיום אנחנו תומכים רק ב-JPG.
Stream של תמונה, כבקשתכם.
במקרה של שגיאה, תקבלו חיווי שגיאה (לדוגמה, HTTP Code 404 אם הפריט לא קיים או HTTP Code 403 אם אסורה הגישה לפריט בשל מגבלת זכויות יוצרים וכו') ובגוף התשובה יהיה XML בפורמט הבא:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<error>
<parameter>default_message</parameter>
<text>The referenced record does not exist in our database</text>
</error>
בדוגמה זו, שגיאה עבור גישה למזהה דף שאינו קיים במערכת.
גודל tile מקובל הוא 256X256 פיקסלים תוך שמירה על פרופורציה (כלומר, אחת הפאות תהיה 256 והשנייה 256 או קטנה יותר, בהתאמה).
דוגמה לבקשה של תמונה גדולה בחלוקה ל-4 tiles (בדרך כלל תחלקו את הפריט שלכם ליותר tiles, זוהי רק דוגמה בסיסית):
http://iiif.nli.org.il/IIIFv21/FL7070748/pct:0,0,50,50/256,/0/default.jpg
http://iiif.nli.org.il/IIIFv21/FL7070748/pct:0,50,50,50/256,/0/default.jpg
http://iiif.nli.org.il/IIIFv21/FL7070748/pct:50,0,50,50/256,/0/default.jpg
http://iiif.nli.org.il/IIIFv21/FL7070748/pct:50,50,50/256,/0/default.jpg
שימושים נוספים:
בקשת העתק דיגיטלי של פריט ברוחב 300 פיקסלים (גובה התמונה מחושב אוטומטית כדי לשמור על פרופורציה)
http://iiif.nli.org.il/IIIFv21/FL7070748/full/300,/0/default.jpg
בקשת העתק דיגיטלי של פריט בגודל מסגרת של 300x100 פיקסלים, תוך שמירה על פרופורציה (תו סימן קריאה). המשמעות היא, המערכת תחזיר את הפריט הגדול ביותר שניתן שלא עובר את הגודל 300x100 תוך שמירה על פרופורציה.
http://iiif.nli.org.il/IIIFv21/FL7070748/full/!300,100/0/default.jpg
בקשת העתק דיגיטלי של פריט בגודל מסגרת של 300x100 בדיוק (אין שמירה על פרופורציה).
http://iiif.nli.org.il/IIIFv21/FL7070748/full/300,100/0/default.jpg
בקשה לקבלת מידע אודות התמונה.
התיעוד המלא לממשק נמצא ב: http://iiif.io/api/image/2.1/#image-information-request-uri-syntax.
http://iiif.nli.org.il/IIIFv21/{identifier}/info.json
עליכם לשאוב את המזהה של ההעתק הדיגיטלי מה-Manifest ולפנות באופן יזום אל שירות זה.
הפלט הוא JSON המפרט את כל המידע אודות התמונה, עפ"י התקן.
כאן נתעכב רק על השדות החשובים:
הבקשה שלכם לפרמטר region נשענת על הגודל המקורי של התמונה, שמצויין בשדות אלו.
תחת מערך זה תמצאו כמה הגדרות חשובות, כמו:
השדות הבאים הם שדות זכויות יוצרים, ומפורטים בתקן תחת: http://iiif.io/api/image/2.1/#rights-and-licensing-properties
שדה זה מתייחס למגבלות זכויות יוצרים ומגבלות חוזיות נוספות. השדה מכיל קישור לעמוד אודות תנאי השימוש בתמונה. שימו לב כי תנאי השימוש אינם זהים ביחס לכל התמונות. למשל: השימוש בתמונה עשוי להיות מוגבל לשימוש למטרות לא מסחריות בלבד או שימוש לצרכי הוראה ומחקר בלבד. במקרים אחרים ייתכן כי לא תחול מגבלה כלשהי על השימוש בתמונה. על המשתמש לבדוק שהשימוש המבוקש על ידו בתמונה תואם את תנאי השימוש. כמו כן יש להציג את הקישור לתנאי השימוש למשתמשי הקצה כך שיהיה לחיץ לגלישה.
שדה זה שדה זה מתייחס למגבלות זכויות יוצרים ומגבלות חוזיות נוספות. השדה מכיל קישור לתמונה שיש חובה להציג ולהצמיד לתמונת הפריט בעת הצגה (משמשת כמעין סימן מים). ברוב המקרים אין לנו סימן מים. עם זאת, אי קיום הוראות השדה מהווה שימוש שלא בהתאם לתנאי הרישיון החלים על הפריט.
שדה זה מתייחס למגבלות זכויות יוצרים ומגבלות חוזיות נוספות. השדה מכיל טקסט קרדיט לבעל זכויות היוצרים ובמקרים מסוימים גם קרדיט לגורמים נוספים, כגון בעל האוסף או גורמים אחרים אשר תנאי הרישיון מחייבים להציגם בעת הצגת התמונה.
אי קיום הוראות השדה מהווה שימוש שלא בהתאם להוראות זכויות היוצרים על הפריט.