EPUB

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Der Titel dieses Artikels ist mehrdeutig. Weitere Bedeutungen sind unter EPUB (Begriffsklärung) aufgeführt.

Vorlage:Infobox Dateiformat/Wartung/MagischeZahl fehltVorlage:Infobox Dateiformat/Wartung/Art fehltVorlage:Infobox Dateiformat/Wartung/Website fehlt

EPUB
Logo
Dateiendung: .epub
MIME-Type: application/epub+zip
Entwickelt von: International Digital Publishing Forum
Aktuelle Version: 3.0.1 (Stand: 26. Juni 2014)
Standard(s): Spezifikationen

EPUB (Akronym für electronic publication) ist ein offener Standard für E-Books vom International Digital Publishing Forum (IDPF), der den älteren Standard Open eBook (OEB beziehungsweise Open eBook Publication Structure, OEBPS) ersetzt.

Optional können DRM-Mechanismen integriert werden. Das Format definiert aber keine Implementierung, sondern überlässt das den jeweiligen Darstellungsprogrammen. Annotationen wie Notizen, Lesezeichen etc. sind nicht Teil des Standards. Mit Version 3 ist es möglich, buchstabengenau auf eine Textstelle zu verweisen.

Auf EPUB basierende E-Books erlauben eine dynamische Anpassung des Textes an die jeweilige Bildschirmgröße des Lesers und eignen sich damit insbesondere für die Ausgabe auf Handheld-Geräten. Im Gegensatz dazu wird beispielsweise der Text bei PDF genauso formatiert angezeigt, wie im gedruckten Buch.

Format[Bearbeiten]

Der EPUB-Standard basiert auf einer Anzahl freier Standards. In Version 2 sind das hauptsächlich XML, XHTML, DTBook, SVG, CSS, NCX (aus DTBook), Dublin Core und Zip. Ferner ist die Interpretation folgender Pixelgraphikformate erforderlich: PNG, JPEG/JFIF, GIF. In Version 3 entfällt einerseits DTBook, dafür kommen weitere Formate, etwa für Audio und Video hinzu (deren Implementierung teilweise Lizenzen benötigt).

Die Spezifikation von EPUB in der Version 2 gliedert sich in drei Teile, die unterschiedliche Bereiche definieren:

  • Die Struktur der eigentlichen Inhalte
  • Das Paketformat
  • Die Struktur des Archivs

Hinzu kommen in Version 3 noch:

  • Medienüberlagerungen (für eine alternative Präsentation als Hörbuch)
  • Kanonische Fragmentidentifizierer (für Verweise auf beliebige Stellen in einem Buch)

Ab Version 3.0.1 kann zudem festgelegt werden, ob die Präsentation seitenbasiert oder rollbar sein soll. Zudem kann festgelegt werden, wie sich der Inhalt an den verfügbaren Platz anpasst - entweder ähnlich wie bei SVG durch Festlegung eines Darstellungsbereiches und gegebenenfalls anschließender Skalierung ('fixiert') oder ähnlich wie bei XHTML durch automatische Aufteilung des Inhaltes auf den verfügbaren Platz ohne Skalierung (nicht 'fixiert').

Open Publication Structure[Bearbeiten]

Die für die eigentlichen Inhalte zu verwendenden Formate werden durch die Open Publication Structure (OPS) geregelt. Die erlaubten Inhaltsdokumente werden in EPUB Content Documents 3.0.1 behandelt. Alle verwendbaren Formate sind in EPUB Publications 3.0.1 festgelegt, siehe nächster Abschnitt.

EPUB unterscheidet hier prinzipiell zwischen den eigentlichen Inhaltsdokumenten und weiteren Dokumenten in anderen Formaten, die in diese eingebettet werden können, also immer inhaltlich von Inhaltsdokumenten abhängig sind und nicht selbständig auftreten.

Dokumente werden in einer oder mehreren UTF-8- oder UTF-16-codierten Dateien gespeichert.

In der Version 2.0/2.0.1 werden Inhaltsdokumente mit jeweils einer Untermenge von XHTML 1.1 oder mit DTBook realisiert, wobei bei gängigen Darstellungsprogrammen eine Interpretation von DTBook gewöhnlich nicht implementiert ist. SVG 1.1 (ohne Interaktivität oder Animation) kann entweder als Dateninsel in XHTML-Dokumenten verwendet werden oder es wird als Bild oder Objekt eingebettet. Stilvorlagen können in einer Untermenge des Formates CSS 2.0 verwendet werden. Hinzu kommen wenige für EPUB spezifische Stilvorlagen-Eigenschaften. Skript-Anwendungen sind nicht erlaubt.

In der Version 3.0/3.0.1 werden Inhaltsdokumente entweder mit der XML-Variante von HTML5 realisiert oder mit SVG 1.1 (ohne Interaktivität oder Animation). Hinsichtlich HTML5 ist nicht definiert, welchem Arbeitsentwurf Autoren folgen sollen, noch wie angegeben wird, welcher Arbeitsentwurf in einem Buch verwendet wird. Wie in HTML5 beschrieben und eingeschränkt, kann zudem auch Präsentations-MathML als Dateninsel verwendet werden. Stilvorlagen beziehen sich hier hauptsächlich auf CSS 2.1 und einige Module von CSS 3.0. Skript-Anwendungen sind optional, die Dokumente sind jeweils so zu gestalten, dass der Inhalt mit und ohne Interpretation von Skripten zugänglich ist. Eine kleine Untermenge des Formates SMIL kann zudem verwendet werden, um eine Medienüberlagerung zu realisieren. Bei dieser werden Audio-Dateien mit dem Inhalt verknüpft, um eine Präsentation auch als Hörbuch anbieten zu können.

Open Packaging Format[Bearbeiten]

Die Strukturierung wird durch das Open Packaging Format (OPF) geregelt, das aktuell in Version EPUB Publications 3.0.1 vorliegt.

Die Struktur und die Aufnahme von Metadaten beschreibt eine Stammdatei (Dateinamenserweiterung: .opf).

Darin werden im ersten Abschnitt, im Element „metadata“, die Metadaten hauptsächlich nach dem Dublin-Core-Schema bereitgestellt. Die Art der Notation ist im Detail für Version 3 anders als für Version 2, was Probleme für Leser bedeuten kann, wenn sie mit älteren Programmen auf solche Information direkt zugreifen möchten, statt das Buch-Archiv zu entpacken und direkt in den Quelltext der OPF-Datei zu gucken. Die gleiche Information, die bei einem Buch nach Version 2 also noch zugänglich sein kann, kann mit einer Notation gemäß Version 3 unzugänglich werden und umgedreht bei Programmen, die nur Version 3 interpretieren und nicht mehr die Notation von Version 2.

In einem zweiten Abschnitt, im Element „manifest“, werden alle weiteren im Archiv gespeicherten Dateien aufgelistet.

Der weitere Abschnitt, durch das Element „spine“ repräsentiert, ist etwas, was bei gedruckten Büchern dem Buchrücken entspricht, die Struktur dient primär dazu, die Lesereihenfolge des Buches für das Darstellungsprogramm festzulegen. Prinzipiell unterschieden wird dabei zwischen Bestandteilen eines Buches, welche in einer linearen Lesereihenfolge stehen, und solchen, die dies nicht tun. Entsprechend kann dies bei jedem Eintrag eines Inhaltsdokumentes angegeben werden. Insbesondere die Versionen 2 und 3.0.1 verlangen ferner, dass alle Inhaltsdokumente, auf die von Dokumenten verwiesen wird, welche im „spine“ stehen, selbst in diesem Verzeichnis stehen. Praktisch kann das Probleme für Bücher ergeben, die teilweise oder komplett eine Struktur haben, die keiner einfachen, linearen Lesereihenfolge folgen und stattdessen eine eigene, eigenbaute Navigation bereitstellen, bei welcher man also etwa zu Alternativen verzweigen kann oder bei welcher es wie in einem Netzwerk oder Labyrinth prinzipiell keine bestimmte Lesereihenfolge gibt. Derartige Inhaltsstrukturen waren schon bei gedruckten Büchern problematisch, sind aber eigentlich für eine digitale Repräsentation kein technisches Problem mehr. Die praktischen Probleme für EPUB-Bücher ergeben sich daraus, dass viele gängige Darstellungsprogramme die Angabe ignorieren, dass Inhaltsdokumente nicht in einer linearen Lesereihenfolge erscheinen sollen, die Dokumente werden dann in der Reihenfolge angezeigt, wie sie im „spine“ notiert sind oder im Anschluss an die als linear gekennzeichneten Inhalte. Dies ist ein explizit erlaubtes Vorgehen. Dies erschwert es Autoren nicht linearer Werke praktisch, in diesem Format sinnvoll zu veröffentlichen (es könnten etwa als improvisierte Gegenmaßnahme viele inhaltsleere Inhaltsdokumente vor und nach einem nicht linearen Dokumenten in das „spine“ eingefügt werden, um dem Leser nahezulegen, nicht die vom Programm vorgeschlagene Reihenfolge zu nutzen, sondern die dem jeweiligen Buch eigenen Navigationsmittel zu verwenden).

Mit dem Attribut „toc“ beim Element „spine“ wird auf ein Inhaltsverzeichnis für menschliche Leser des Buches verwiesen. Mit einem weiteren optionalen Abschnitt können besondere Strukturen des Buches wie die Titelseite, Inhaltsverzeichnis, Index, Glossar etc. angegeben werden.

Das für menschliche Leser gedachte Inhaltsverzeichnis, welches außerhalb der normalen Lesereihenfolge dargestellt wird, wird in Version 2.0/2.0.1 im Abschnitt „navMap“ in einer Datei, typisch mit der Dateinamenserweiterung .ncx in dem XML-Format NCX angegeben, das DTBook entstammt. Jedem Eintrag wird im Attribut „playOrder“ eine Position innerhalb der Reihenfolge der wiederzugebenden Texte zugeordnet.

Ein solches Dokument ist in Version 3.0/3.0.1 optional. Dafür ist in dieser Version das Inhaltsverzeichnis in einem Dokument anzugeben, welches mit einer Untermenge der XML-Variante von HTML5 zu realisieren ist und damit auch innerhalb der normalen Lesereihenfolge verfügbar gemacht werden kann.

OEBPS Container Format[Bearbeiten]

Die Verpackung aller Teildateien in eine einzelne Datei und die Struktur des darin enthaltenen Dateisystems wird durch das OEBPS Container Format (OCF) geregelt, das aktuell in Version EPUB Open Container Format (OCF) 3.0.1 vorliegt. Sämtliche Teildateien werden in einer Zip-Archivdatei mit der Dateinamenserweiterung .epub zusammengefasst. Darin müssen mindestens enthalten sein:

  • eine unkomprimierte Datei mit dem Namen mimetype und dem Inhalt application/epub+zip im Wurzelverzeichnis als erste Datei im Archiv,
  • ein Verzeichnis META-INF mit einer Datei namens container.xml, die auf die Stammdatei der Publikation verweist,
  • die Stammdatei,
  • ein Inhaltsverzeichnis zur Navigation durch die Publikation und
  • mindestens eine Inhaltsdatei.

Beispiele[Bearbeiten]

Das Dateisystem in einem minimalen Buch gemäß EPUB 2 könnte so aussehen:

  mimetype
  META-INF/
    container.xml
  inhalt.opf
  inhalt.ncx
  inhalt.xhtml

Das Dateisystem für EPUB 3 kann ähnlich aussehen, allerdings gibt es für die Navigation eine andere Datei (hier 'nav.xhtml' genannt) im Format XHTML, die Datei 'inhalt.ncx’ ist hier optional, für alte Darstellungsprogramme aber sinnvoll:

  mimetype
  META-INF/
    container.xml
  inhalt.opf
  inhalt.ncx
  nav.xhtml
  inhalt.xhtml

container.xml[Bearbeiten]

  <?xml version="1.0" encoding="UTF-8"?>
  <container
    xmlns="urn:oasis:names:tc:opendocument:xmlns:container"
    version="1.0">
    <rootfiles>
      <rootfile
        full-path="inhalt.opf"
        media-type="application/oebps-package+xml"/>
    </rootfiles>
  </container>

Stammdatei inhalt.opf (Version 2)[Bearbeiten]

  <?xml version="1.0" encoding="UTF-8"?>
  <package version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:opf="http://www.idpf.org/2007/opf"
    xmlns="http://www.idpf.org/2007/opf"
    unique-identifier="BookId">
    <metadata>
      <!-- Die folgende Buchidentifikation ist einzigartig für jedes Buch zu wählen -->
      <dc:identifier id="BookId" opf:scheme="UUID">6f2e78a1-c4f3-4895-b58b-347f92fb2d14</dc:identifier>
      <!-- Hauptsprache des Buches -->
      <dc:language>de</dc:language>
      <!-- Buchtitel -->
      <dc:title xml:lang="de">Hallo Welt</dc:title>

      <!-- bis hier notwendige Metainformationen, es folgen einige optionale: -->

      <!-- Beschreibung -->
      <dc:description xml:lang="de">Beispiel für ein Buch im Format EPUB 2.</dc:description>
      <!-- Erzeuger, Erschaffer des digitalen Buches, hier auch der Autor -->
      <dc:creator
        opf:file-as="Zufall, Rainer"
        opf:role="aut"
        xml:lang="de">Rainer Zufall</dc:creator>
      <!-- Charakteristischer Zeitpunkt der Erstellung des Buches -->
      <dc:date opf:event="creation">2013-10-23</dc:date>
      <!-- Zeitpunkt der Veröffentlichung -->
      <dc:date opf:event="publication">2013-10-23</dc:date>
    </metadata>
    <!-- Verzeichnis der Dateien des Buches -->
    <manifest>
      <item id="ncx" href="inhalt.ncx" media-type="application/x-dtbncx+xml"/>
      <item id="Datei_1" href="inhalt.xhtml" media-type="application/xhtml+xml"/>
    </manifest>
    <!-- Reihenfolge der Inhalte des Buches -->
    <spine toc="ncx">
      <itemref idref="Datei_1"/>
    </spine>
  </package>

Stammdatei inhalt.opf (Version 3)[Bearbeiten]

  <?xml version="1.0" encoding="UTF-8"?>
  <package version="3.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:opf="http://www.idpf.org/2007/opf"
    xmlns="http://www.idpf.org/2007/opf"
    unique-identifier="Id">
    <metadata>
      <!-- Die folgende Buchidentifikation in Kombination mit folgendem Datum einzigartig für jedes Buch zu wählen -->
      <dc:identifier id="Id">6f2e78a1-c4f3-4895-b58b-347f92fb2d14</dc:identifier>
      <!-- Datum der letzten Änderung -->
      <meta property="dcterms:modified">2013-10-26T17:27:34Z</meta>
      <!-- Hauptsprache des Buches -->
      <dc:language>de</dc:language>
      <!-- Buchtitel -->
      <dc:title xml:lang="de">Hallo Welt</dc:title>

      <!-- bis hier notwendige Metainformationen, es folgen einige optionale: -->

      <!-- Beschreibung -->
      <dc:description xml:lang="de">Beispiel für ein Buch im Format EPUB 3.</dc:description>
      <!-- Erzeuger, Erschaffer des digitalen Buches, hier auch der Autor -->
      <dc:creator id="rainer" xml:lang="de">Rainer Zufall</dc:creator>
      <meta refines="#rainer" property="file-as">Zufall, Rainer</meta>
      <meta refines="#rainer" property="role" scheme="marc:relators">aut</meta>
      <!-- Angabe des Typs der Buchidentifikation -->
      <meta property="identifier-type" refines="#Id">UUID</meta>
      <!-- Zeitraum der Erstellung des Buches -->
      <meta property="dcterms:created">2013-10-23/26</meta>
      <!-- Zeitpunkt der Veröffentlichung -->
      <meta property="dcterms:issued">2013-10-26</meta>
    </metadata>
    <!-- Verzeichnis der Dateien des Buches -->
    <manifest>
      <item id="ncx"    href="inhalt.ncx"   media-type="application/x-dtbncx+xml"/>
      <item id="inhalt" href="inhalt.xhtml" media-type="application/xhtml+xml"/>
      <item id="nav"    href="nav.xhtml"    media-type="application/xhtml+xml" properties="nav"/>
    </manifest>
    <!-- Reihenfolge der Inhalte des Buches -->
    <spine toc="ncx">
      <itemref idref="nav"/>
      <itemref idref="inhalt"/>
    </spine>
  </package>

Detailliertes Inhaltsverzeichnis inhalt.ncx (für Version 2, optional für Version 3)[Bearbeiten]

  <?xml version="1.0" encoding="UTF-8"?>
  <ncx
    xmlns="http://www.daisy.org/z3986/2005/ncx/"
    version="2005-1"
    xml:lang="de">
    <head>
      <!-- Dieselbe Buchidentifikation wie in der OPF-Datei: -->
      <meta name="dtb:uid" content="6f2e78a1-c4f3-4895-b58b-347f92fb2d14"/>
    </head>
    <docTitle>
      <text>Hallo Welt</text>
    </docTitle>
    <docAuthor>
      <text>Rainer Zufall</text>
    </docAuthor>
    <navMap>
      <navPoint playOrder="1" id="id_01">
        <navLabel>
          <text>Hallo Welt</text>
        </navLabel>
        <content src="inhalt.xhtml"/>
      </navPoint>
    </navMap>
  </ncx>

Detailliertes Inhaltsverzeichnis nav.xhtml (für Version 3)[Bearbeiten]

<?xml version="1.0" encoding="UTF-8" ?>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ops="http://www.idpf.org/2007/ops"
      xml:lang="de">
  <head>
    <title>Inhaltsverzeichnis</title>
  </head>
  <body>
   <nav ops:type="toc">

    <h1>Inhaltsverzeichnis</h1>

    <ol>
      <li><a href="nav.xhtml">Inhaltsverzeichnis</a></li>
      <li><a href="inhalt.xhtml">Hallo Welt</a></li>
    </ol>

  </nav>
 </body>
</html>

Eigentlicher Inhalt inhalt.xhtml (für Version 2)[Bearbeiten]

Eine einfache XHTML-Datei:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xml:lang="de">
  <head>
    <title>Hallo Welt</title>
  </head>
  <body>
    <h1>Hallo Welt</h1>
    <p>Ein einfacher Absatz als Textbeispiel.</p>
  </body>
</html>

Eigentlicher Inhalt inhalt.xhtml (für Version 3)[Bearbeiten]

Eine einfache XHTML-Datei (nach einem Arbeitsentwurf für HTML5 und mit erweiterndem Attribut type aus dem Namensraum OPS/EPUB, um die semantische Funktion von Elementen genauer zu kennzeichnen):

<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ops="http://www.idpf.org/2007/ops"
      xml:lang="de">
  <head>
    <title>Hallo Welt</title>
  </head>
  <body>
    <h1>Hallo Welt</h1>

    <section ops:type="chapter">
      <h2>Titel des ersten Kapitels</h2>
      <p>Ein einfacher Absatz als Textbeispiel.</p>
      <p>...</p>
    </section>
    <section ops:type="chapter">
      <h2>Titel des zweiten Kapitels</h2>
      <p>...</p>
    </section>
  </body>
</html>

Überprüfung[Bearbeiten]

Da alle Inhalte des EPUBs standardisiert und XML-basiert sind, kann ein EPUB, ähnlich wie ein HTML-Dokument, validiert werden. Dabei wird überprüft, ob alle Regeln des EPUB- und der XML-Standards eingehalten wurden.

Geschichte[Bearbeiten]

Open eBook, der Vorläufer von EPUB, wurde von zwei Herstellern von E-Book-Systemen, nämlich SoftBook Press (hauptsächlich) und NuvoMedia Inc., für ihre mobilen Lesegeräte entwickelt und in den späten 1990er Jahren veröffentlicht.[1] Unter anderem setzte Microsoft 1998 auf Open eBook,[1] nachdem das eigene Lit-Format begraben worden war. Im September 1999 wurde Version 1.0 der Spezifikation veröffentlicht, die sogenannte Open eBook Publication Structure (OEBPS). Diese wurde im Juni 2001 (Version 1.0.1) und August 2002 (Version 1.2) mit neuen Formatempfehlungen aktualisiert. Im September 2007 wurde die Open Publication Structure (OPS) 2.0 unter dem heutigen Namen EPUB veröffentlicht, welches OEBPS ersetzt. Das Format wird seither im Rahmen des International Digital Publishing Forum (IDPF) entwickelt. Dateien dieser neuen Generation des Formats tragen nicht mehr die bisherige Dateiendung .opf (OEB Package Format), sondern nunmehr .epub.

Unterstützung[Bearbeiten]

Auf die Inhalte von digitalen Büchern im Format EPUB kann auf recht verschiedene Art und Weise zugegriffen werden. Weil die eigentlichen Inhalte aus Standardformaten wie XHTML und SVG bestehen, eignet sich prinzipiell eine breite Palette von Programmen zur Präsentation der Inhalte. Sofern das ZIP-Archiv, welches die EPUB-Datei darstellt, entpackt wird, wird der Inhalt des Buches für jegliches Darstellungsprogramm zugänglich, welches die Inhaltsformate interpretieren kann. EPUB selbst sieht insbesondere in der Version 2 eine solche Verwendung alternativ zu der als ZIP-Archiv direkt vor. Die gängigen allgemeinen Darstellungsprogramme für XHTML und SVG interpretieren aber außerhalb des EPUB-Umfeldes die für EPUB spezifischen Formate nicht, insbesondere die OPF-Datei wäre hier eigentlich von zentraler Bedeutung. Hinterlegt ein Autor oder Erzeuger eines EPUB-Archivs allerdings das in Version 3 ohnehin erforderliche Inhaltsverzeichnis im Format XHTML unter einem eindeutigen Dateinamen (bei einem deutschsprachigen Buch etwa 'Inhaltsverzeichnis.xhtml'), und macht dieses so ausführlich, dass darüber alle Inhaltsdokumente direkt oder indirekt über Einbettung oder weitere Verweise zugänglich werden, wird solch ein EPUB-Archiv auch recht gut für gängige Darstellungsprogramme für Inhalte im Netz, die auf Mozilla/Gecko, Opera/Presto, WebKit/Blink, Trident basieren, ohne zusätzliche Erweiterungen nutzbar.

Zusätzlich gibt es auch Erweiterungen für diese Darstellungsprogramme, die in der Lage sind, das Archiv direkt zu handhaben und auch die EPUB-spezifischen Dateien, insbesondere die OPF-Datei zu interpretieren und so den Inhalt des Buches automatisch zugänglich zu machen.

Daneben kann es auch noch eigenständig entwickelte Programme speziell zur Interpretation von EPUB geben, welche jedenfalls teilweise etwa Mozilla/Gecko oder WebKit/Blink intern als Programmbibliothek verwenden, um damit Inhalte zu präsentieren. Weil die Inhaltsdokumente mit XHTML und SVG aus XML bestehen, ist es allerdings auch für einen Anbieter noch relativ einfach, ausgehend von einem XML-Prozessor ein eigenes Präsentationsprogramm zu entwickeln, welches dann unabhängig von bereits bestehenden Programmbibliotheken verwendet werden kann oder eine Kombination anderer Bibliotheken ermöglicht.

Die Interpretation des Formates ist also primär von Programmen oder Programmbibliotheken abhängig, die recht breit auf vielen verschiedenen Betriebssystemen verfügbar sind, eine Abhängigkeit von bestimmten Geräten besteht nicht. Gleichwohl gibt es neben den gängigen Varianten von Rechnern auch spezielle Lesegeräte für digitale Bücher, teils auch mit bestimmten Einschränkungen hinsichtlich der Präsentation, etwa eine Anzeige nur in Grauwerten aufgrund der eingesetzten Technologie (digitale Tinte, 'elektronisches Papier'), welche dann intern wiederum auf die bereits genannten Programme oder Programmbibliotheken zurückgreifen können oder eigene Programme verwenden, um den Inhalt eines Buches zu präsentieren. Auch die in solchen Geräten verwendeten Prozessoren und Speicher fallen oft deutlich bescheidener aus, als man dies von den üblichen Rechnern für allgemeine Anwendungen im Büro oder Daheim gewohnt ist, was die darstellbaren Inhalte von der Komplexität und vom Umfang her einschränken kann.

Auch bei Verwendung gleicher Programmbibliotheken kann die Interpretation also verschiedenen Einschränkungen und Einflüssen unterliegen, die von Autoren und Lesern nicht allein daran abgeschätzt werden können, welche Programmbibliothek zur Präsentation verwendet wird. Hat ein Gerät etwa keinen Farbbildschirm, kann es auch farbige SVG-Dokumente nicht so präsentieren, wie vermutlich vom Autor beabsichtigt. Auch die Einbettung einer Bibliothek in eine Nutzerschnittstelle, eine graphische Oberfläche, kann Einfluss auf die Präsentationsmöglichkeiten haben. Hat etwa ein originales Darstellungsprogramm noch keine besonderen Probleme damit, lange Wörter oder große Graphiken zu präsentieren, kann dies komplett anders aussehen, wenn eine EPUB-Erweiterung versucht, denselben Inhalt zur Präsentation zu bringen, wenn dabei die Anmutung eines gedruckten Buches mit umblätterbaren Seiten erreicht werden soll.

Die Fähigkeiten oder die Güte der Interpretation von EPUB bei Eigenentwicklungen für spezielle Geräte sind für Außenstehende noch deutlich schwerer zu beurteilen, wenn das konkrete Gerät nicht vorliegt oder kaum kontrollierbar ist, ob dieses Programmversionen automatisch aktualisiert oder nicht.

Insgesamt ist die Beurteilung der Unterstützung des Fromates EPUB also noch schwerer zu überschauen als die allgemeine Unterstützung der eigentlichen Inhaltsformate XHTML und SVG. Pauschal ist allerdings immer davon auszugehen, dass die Darstellungsprogramme nicht alle Anforderungen von EPUB erfüllen und somit nicht jedwedes formal korrekte Buch im Format EPUB auch so präsentieren können, dass alle Inhalte zugänglich wären. In der Praxis sind Autoren daher gezwungen, nur eine Untermenge von EPUB in ihren Büchern zu verwenden, damit den Lesern alle im Buch enthaltenen Inhalte zugänglich bleiben. Die Untermenge ist kleiner als jene, die Autoren verwenden, wenn sie Inhalte direkt im Netz veröffentlichen, also ohne ein EPUB/ZIP-Archiv drumherum.

Spezielle Lesegeräte für E-Books[Bearbeiten]

Nahezu alle E-Book-Reader (mit Ausnahme von Amazon Kindle) interpretieren das EPUB-Format zumindest teilweise. Oft ist nicht erkennbar oder einfach ermittelbar, ob die Geräte zur Präsentation auf etablierte Programmbibliotheken zurückgreifen oder eigene Entwicklungen einsetzen. Aussagen wie die Fähigkeit zur Interpretation von EPUB 2 oder EPUB 3 für ein bestimmtes Gerät sind in der Praxis meist kritisch zu beurteilen, weil es vermutlich bislang kein Programm gibt, welches EPUB in der Version 2 oder 3 komplett und korrekt interpretiert. Gemeint ist damit meistens, dass Basisbestandteile von EPUB interpretiert werden, was es ermöglicht, einfach gestaltete Bücher damit problemlos zu lesen. Bücher, welche die jeweiligen Möglichkeiten einer EPUB-Version mit reichhaltigeren Inhalten ausschöpfen, können immer Fehler und Lücken solcher Programme offenbaren.

Eine Übersicht, welche Geräte oder Programme welche Merkmale interpretieren, bietet zum Beispiel das EPUB 3 Support Grid.[2]

Programme zum Lesen (Auswahl)[Bearbeiten]

Programm Lizenz Plattform Bemerkungen
Adobe Digital Editions Freeware Windows, Mac OS X E-Book-Reader, liest und verwaltet neben EPUB-Dokumenten auch die Formate PDF, XHTML und ACSM
Aldiko Freeware Android
Azardi Freeware Windows, Linux, Mac OS X Nutzt intern zur Darstellung von Inhalten Gecko, wie etwa auch Firefox (kostenlos)
Bluefire Reader Freeware Apple iOS, Android, Windows Kann EPUB mit Adobe DRM lesen
Calibre GPLv3 Windows, Mac OS X, Linux Open-Source-Suite für E-Books[3]
Cool Reader GPLv2 Android, eComStation[4] Auch auf Kindle Keyboard mit Jailbreak
EPUBReader Freeware Windows, Mac OS X, Linux Erweiterung für Darstellungsprogramme vom Typ Gecko wie Firefox, Iceweasel, Seamonkey etc, mit der man EPUB-Dateien direkt lesen kann[5]
FBReader GPLv2 Windows, Linux, PDAs, Android
Freda en:CPOL v1.02 Windows 8, Windows Phone, Windows Mobile EPUB-Reader, unterstützt auch TXT- und HTML-Format[6]
Gitden Freeware iOS, Android EPUB-Reader App, sehr breite Unterstützung von ePub3 Features[7]
i2Reader Freeware Apple iOS
iBooks proprietär Apple iOS, Mac OS X ab iOS 3.2, ab Mac OS X 10.9
Laputa Reader Freemium Android Optisch aufwendiges Blättern ähnlich wie beim iPad
eBook.de Lese-App Freeware iOS, Android Kostenlose E-Book-Reader-Software[8]
Lucidor Freeware Windows, Linux, Mac OS X Nutzt intern zur Darstellung von Inhalten Gecko, wie etwa auch Firefox
Lucifox Freeware Windows, Linux, Mac OS X Erweiterung für Darstellungsprogramme vom Typ Gecko wie Firefox, Iceweasel, Seamonkey etc.
Mantano Reader proprietär iOS, Android
Mobipocket Freeware Windows, Blackberry, Symbian, Windows Mobile
Moon+ Reader Freemium Android Unterstützt TTS, Markierungen, Kommentare, weitere E-Book-Formate
Okular GPL Linux, Windows, Mac OS X Hinweis (Version 0.12): Die Gestaltung des E-Books wird nur eingeschränkt dargestellt (z. B. keine Kapitel, kein Inhaltsverzeichnis)
Overdrive Media Console Freeware Blackberry, Android, iOS, Windows Phone 7
pReader GPLv3 WebOS E-Book-Reader für viele Formate
Readium AGPLv3 / Apache v2.0 Windows, Linux, Mac OS X Erweiterung vom IDPF für Darstellungsprogramme vom Typ WebKit oder Blink wie etwa Chromium oder Google Chrome (kostenlos)
Sony Reader Apps Freeware Windows, Mac, Android, Sony Tablet
Stanza Freeware Windows, Mac OS X, Apple iOS
Sumatra PDF GPLv3 Windows Begann als PDF-Reader und unterstützt neben EPUB zahlreiche weitere Formate
Talking Clipboard Freeware Windows Software, die E-Books vorliest

Programme zum Erstellen von EPUBs[Bearbeiten]

Neben einem Programm, um das ZIP-Archiv selbst zu erstellen, werden keine besonderen Programme benötigt, um Bücher im Format EPUB zu erzeugen. Für die Textinhalte in den XML-Dateien reicht ein einfacher Texteditor. Das ermöglicht es auch, die semantischen Möglichkeiten der Inhaltsformate voll auszuschöpfen. Konvertierungsprogramme und solche mit lediglich einer Ausgabe im Format EPUB verstehen zumeist den Inhalt nicht und sind daher meist nicht in der Lage, den Inhalt optimal zu strukturieren. Wird also ein Programm verwendet, welches eine Formatkonversion verwendet oder eine EPUB-Ausgabe anbietet, so ist es dringend zu empfehlen, den Inhalt mit einem einfachen Texteditor nachzuprüfen und nachzubessern, um ein optimales Ergebnis zu erzielen.

Oft ermöglichen es solche Programm auch, bereits begonnene EPUB-Archive einzulesen. Als Test bietet es sich hier an, ein manuell erstelltes Buch, welches semantische Textauszeichnung intensiv nutzt, ebenso wie die erlaubten Inhaltsformate, insbesondere XHTML und SVG, mit solch einem Programm zu laden und es wieder zu speichern oder nach kleineren Ergänzungen wieder zu speichern. Hat das Programm die semantische Textauszeichnung ohne Nachfrage verändert oder etwa SVG-Dokumente zu Pixelgrafik konvertiert oder ganz weggelassen, ist solch einem Programm offenbar mit äußerster Skepsis zu begegnen. Leider gibt es zahlreiche solche Programme, welche dem Format längst nicht gewachsen sind.

Software Lizenz Plattform Bemerkungen
ABBYY FineReader 11 proprietär Windows, Mac OS X Texterkennung (OCR) mit Exportfunktion ins EPUB-Format, 30 Tage Trial-Version erhältlich
Adobe InDesign[9] proprietär Windows, Mac OS X Desktop-Publishing-Programm
Adobe RoboHelp proprietär Windows Autorensystem für Online-Dokumentation mit Exportfunktion ins EPUB-Format
Apple Pages proprietär Mac OS X Textverarbeitung mit Exportfunktion ins EPUB-Format
Atlantis Word Processor proprietär Windows Textverarbeitung mit Exportfunktion ins EPUB-Format, 30 Tage Trial-Version erhältlich
BlueGriffon EPUB Edition proprietär Windows, Linux, Mac OS X EPUB-Editor
Calibre GPLv3 Windows, Linux, Mac OS X Konvertierungsprogramm, Editor für EPUB und AZW3 (Kindle)[10]
Calligra Author LPGL / GPL Linux Teil der Calligra Suite
eBooksWriter proprietär Windows Demoversion erhältlich
eCub Freeware Windows, Linux, Mac OS X Konvertierungsprogramm
eLaix GPL Windows, Linux, Mac OS X LibreOffice-Plugin, das neben ILIAS-Lerneinheiten auch epubs exportiert (Projekt wird jedoch eventuell nicht mehr gewartet[11])
ePuper Freeware Windows EPUB-Editor, Freeware
Jutoh proprietär Windows, Mac OS X erstellt epubs aus odt-Files, die z. B. mit OpenOffice oder LibreOffice erstellt wurden
Pandoc GPL Linux, Mac OS X, Windows, Universal (Haskell) Universelles Konvertierungsprogramm (auch TeX -> EPUB)
Papyrus Autor proprietär Windows, Mac OS X Deutschsprachige Textverarbeitung mit Exportfunktion ins EPUB-Format
QuarkXPress[12] proprietär Mac OS X, Windows Desktop-Publishing-Programm
Sigil GPLv3 Windows, Linux, Mac OS X Open-Source-Editor zum Lesen und Schreiben von EPUBs
writer2ePub[13] Freeware Windows, Linux, Mac OS X LibreOffice- und Apache OpenOffice-Plug-in, das aus Textdokumenten epubs erstellt.
Xilisoft PDF to EPUB Converter proprietär Windows Konvertierungsprogramm, 30 Tage Trial-Version erhältlich

Digitale Rechteverwaltung[Bearbeiten]

Beim Format EPUB ist es vorgesehen, optional in einer bestimmten Datei Informationen zur digitalen Rechteverwaltung (DRM) zu notieren, bis einschließlich Version 3.0 ist allerdings keine bestimmte Struktur dafür definiert. Eine Interpretation solcher Informationen ist folglich optional, eine gegebenenfalls danach vorgenommene Verschlüsselung der Inhalte kann diese also für viele Darstellungsprogramme unzugänglich machen. Momentan existieren zudem unterschiedliche, miteinander nicht kompatible Systeme. Das von Adobe entwickelte ADEPT-DRM-System hat von diesen eine vergleichsweise hohe Verbreitung; fast alle Händler, die ihre EPUB-Bücher schützen, verwenden dieses System, und es wird von vielen kommerziellen E-Book-Readern unterstützt, meist jedoch nicht von freien Darstellungsprogrammen oder Erweiterungen für Browser.

Ein weiteres DRM-System ist von Apple entwickelt. Bisher kann lediglich das firmeneigene Darstellungsprogramm iBooks Bücher in diesem Format entschlüsseln. Damit ist dieses System auf Geräte beschränkt, für die iBooks als Darstellungsprogramm verfügbar ist.

Entfernen des Kopierschutzes[Bearbeiten]

Für die von Adobe entwickelte, digitale Rechteverwaltung ADEPT DRM wurde im Februar 2009 eine Möglichkeit publiziert, den Kopierschutz zu umgehen.[14] Dabei wurde nicht der Kopierschutz an sich geknackt, sondern lediglich der private Schlüssel extrahiert. Mit diesem lassen sich dann alle mit diesem Schlüssel geschützten EPUB-Dateien vollständig entschlüsseln und ohne digitales Rechtemanagement neu abspeichern. Diese neuen Dateien unterliegen somit nicht mehr den Restriktionen der digitalen Rechteverwaltung. Die Inhalte werden auch für andere Darstellungsprogramme zugänglich. Eventuell vorhandene persönliche Identifizierungsdaten bleiben vorhanden.

Auch das von Apple entwickelte DRM-System kann mit der Software Requiem ab Version 3.3 umgangen werden.[15]

Literatur[Bearbeiten]

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. a b businessweek.com
  2. epubtest.org
  3. calibre-ebook.com
  4. ecomstation.it
  5. epubread.com
  6. turnip.demon.co.uk/jim/freda
  7. gitden.com
  8. ebook.de
  9. Prüfstand: Intermezzo Adobes Creative Suite 5.5 setzt auf digitales Publishing. In: c’t, 14/2011
  10. calibre-ebook.com
  11. extensions.libreoffice.org
  12. Prüfstand: Schaltzentrale QuarkXPress 9 rüstet sich fürs digitale Publishing. In: c’t, 11/2011
  13. Writer2ePub Wiki
  14. Circumventing Adobe ADEPT DRM for EPUB (englisch)
  15. Remove iBooks DRM