Читать книгу EPUB3 und KF8 verstehen - Andreas Kämmerle - Страница 8
2.1.2 Der manifest-Container
ОглавлениеDer zweite Container der Packaging-Datei ist das manifest-Element, das eine Auflistung aller Dateien beinhaltet, aus welchen sich das E-Book zusammensetzt. Dazu gehören die Inhaltsdokumente wie Texte und Multimedia, Navigationsdokumente, Stylesheets und eingebettete Schriften.
Diese Dateien müssen jeweils in einem item-Element referenziert werden. Die item-Elemente sind leere Elemente und beinhalten die notwendigen Angaben als Attributewerte. Im Einzelnen sind dies eine eindeutige ID, ein Verweis auf die Zieldatei sowie eine Deklaration des Medientyps dieser Datei. Der Medientyp einer Ressource wird über den sogenannten MIME-Type definiert. Der MIME-Type beinhaltet eine maschinenlesbare Information über den Typ einer Datei.
MIME-Type | Endung | Bedeutung |
application/xhtml+xml | .xhtml | Inhaltsformat |
application/font-woff | .woff | Fontformat |
application/vnd.ms-opentype | .otf | Fontformat |
application/pls+xml | .pls | XML-basiertes Aussprachelexikon |
application/smil+xml | .smil | XML-basierte Synchronisierungsstruktur |
application/x-dtbncx+xml | .ncx | Abgelöster Navigationsstandard |
image/gif | .gif | Abbildungsformat |
image/jpeg | .jpg | Abbildungsformat |
image/png | .png | Abbildungsformat |
image/svg+xml | .svg | XML-basiertes Vektorgrafikformat |
audio/mp4 | .mp4 | Audioformat |
audio/mpeg | .mp3 | Audioformat |
text/css | .css | Stylesheetformat |
text/javascript | .js | Skriptformat |
Tab. 2.2 MIME-Types der Core Media Types
Für externe Ressourcen sowie Inhalte, die nicht den sogenannten Core Media Types entsprechen, muss des Weiteren eine Alternative angegeben werden, auf die zurückgegriffen werden kann, wenn das Lesegerät den fremden Dateityp nicht wiedergeben kann. Wird beispielsweise ein PDF-Dokument in ein EPUB eingebunden, sollte eine HTML-Datei gleichen Inhalts mitgeliefert werden, um die Inhalte auf Geräten, die PDF nicht darstellen können, dennoch zugänglich zu machen.
Diese Fallback-Lösungen sind notwendig, um eine vollständige Unterstützung der EPUB-Inhalte durch technologisch unterschiedlich leistungsfähige Ausgabegeräte zu gewährleisten und stellen einen wesentlichen Erfolgsfaktor des EPUB 3-Formats dar.
Für das item-Element existiert eine Liste an properties-Attributwerten, welche für bestimmte Einträge gesetzt werden müssen. So wird beispielsweise eine Abbildung mit der cover-image-Eigenschaft als Covergrafik des EPUBs definiert. Darüber hinaus kann mit dem media-overlay-Attribut auf ein Audio-Overlay für ein Inhaltsdokument verwiesen werden, welches wiederum im Manifest gelistet werden muss (siehe Kapitel 2.3).
1<manifest>
2 <item id="toc" properties="nav" href="toc.xhtml" media-type="application/xhtml+xml"/>
3 <item id="cover" href="abbildungen/cover.jpg" media-type="image/jpeg" properties="cover-image"/>
4 <item id="kapitel1" href="kapitel1.xhtml" media-type="application/xhtml+xml"/>
5 <item id="kapitel2" href="kapitel2.xhtml" media-type="application/xhtml+xml"/>
6 <item id="font" href="fonts/DroidSerif-Regular.otf" media-type="application/vnd.ms-opentype"/>
7 <item id="pdf" href="pdf/broschuere.pdf" media-type="application/pdf" fallback="broschuere"/>
8 <item id="broschuere" href="broschuere.xhtml" media-type="application/xhtml+xml"/>
9</manifest>
Listing 2.6 Das manifest-Element mit den item-Kindelementen
Das obere Code-Listing beinhaltet eine Fallback-Struktur für ein eingebundenes PDF [8]. Kann dieses nicht angezeigt werden, wird stattdessen eine XHTML-Datei, die idealerweise denselben Inhalt anbietet, angezeigt. Ausgeschlossen von dieser Fallbackregelung über das manifest-Element sind lediglich Schriftdateien – hier findet das Fallback-Handling über die CSS-Datei statt.
Das Manifest eines EPUBs muss mindestens aus einem Eintrag, der den Verweis auf das Navigationsdokument enthält, bestehen.