Inhaltsverzeichnis

E-Book-Formatierung

Formate

Das Standardformat von E-Books ist .epub. Es wird von den meisten Softwareunternehmen und auch den Herstellern von E-Book-Readern unterstützt.

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

Er unterstützt DRM-Mechanismen.

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 Mobile Devices. Im Gegensatz dazu wird beispielsweise der Text bei PDF wie im gedruckten Buch angezeigt. Bei kleinen Ausgabegeräten kann eine derartige Darstellung jedoch für den Leser unbefriedigend sein, falls er bei einer individuell angenehmen Anzeigegröße des Textes häufig hin- und herscrollen muss.

Wichtig: Die Formatvorlagen von Word dienen direkt als Basis des internen CSS, das beim Umwandeln in HTML entsteht und somit auch an EPUB weitergegeben wird.

E-Book-Editoren

Der übliche Weg zu einem E-Book führt über HTML.

D.h., man sollte eigentlich immer aus dem Ur-Format (Word, FrameMaker, InDesign) heraus erst einmal im HTML-Format abspeichern. Unter anderem werden dabei die Bilder automatisch auf eine kleine Auflösung heruntergerechnet (was gewünscht ist!).

Wichtig im Ur-Programm: saubere und konsistente Zuweisung von Formatvorlagen (FVs). In Word unbedingt alle nicht verwendeten FVs löschen!

Die HTML-Datei kann dann mit einem HTML-Editor nachbearbeitet werden. Ein guter HTML-Editor ist NVU (obwohl seit 2006 nicht verändert). Vorteile:

HTML wird dann

Unterschied zwischen beiden Programmtypen:

Finger weg von diesen EPUB-Konvertern und/oder -Editoren

Konverter
Editoren

Die folgenden EPUB-Editoren werden (auf ihren Homepages, aber auch von machen „Experten“) angepriesen, haben aber alle die Schwäche des Unausgereiftseins. Manche können noch nicht einmal ein Inhaltsverzeichnis erzeugen; sehr schlecht sind auch fast immer die Suchen/Ersetzen-Möglichkeiten oder auch überhaupt das Arbeiten im Quellcode. Teilweise führen Sie zum Absturz des Rechners.

Empfohlene EPUB-Konvertern und/oder -Editoren

Online-Konverter
Stand-Alone-Konverter
EPUB als Export aus Textverarbeitungs- oder Layoutprogramm
Stand-Alone-Editoren

Alle diese Editoren können html importieren und in xhtml umwandeln. Jutoh und Calibre können auch doc- oder docx importieren. Die Bearbeitungsmöglichkeiten sind vielfältig. Sowohl in Sigil als auch in Calibre muss zur Bearbeitung in die Quellcode-Ansicht gewechselt werden (was aber nicht unbedingt ein Nachteil ist); Jutoh bietet eine sehr komfortable und lesitungsfähige WYSIWYG-Oberfläche, lässt aber einen Wechsel in den Quellcode zu.

Um alle Möglichkeiten rund um E-Books ausschöpfen zu können, empfiehlt es sich, alle genannten Stand-Alone-Konverter und -Editoren an der Hand zu haben.

CSS für EPUB

sehr gute Quellen mit Übersicht und Erläuterung:

http://www.data2type.de/xml-xslt-xslfo/epub-ueberblick/

https://friendsofepub.github.io/eBookTricks/

https://idpf.github.io/a11y-guidelines/ bzw. https://idpf.github.io/a11y-guidelines/content/style/reference.html

Vorgehen zur Bearbeitung eines CSS: Sigil und NvU/KompoZer

  1. zunächst die EPUB-Datei am besten mit Sigil öffnen
  2. CSS-Code (komplett oder auch nur zum Teil, z.B. der Code für das Element h1) herauskopieren (markieren, dann Strg-c)
  3. NvU oder KompoZer öffnen, neue HTML-Datei beginnen und den kopierten CSS-Code einfügen: Dabei aufpassen: der Code muss zwischen dem style-Anfang und -Ende-Tag stehen.
  4. Damit die CSS-Bearbeitungseffekte gleich gesehen werden können, etwas Probetext eingeben und diejenigen Formatvorlagen zuweisen, deren Einstellungen dann im CSS verändert werden sollen.
  5. WYSIWYG-Ansicht, geteilte Ansicht oder „Vorschau“ wählen
  6. internen CSS-Editor aufrufen (Menü <Extras - CSS> oder F11)
  7. im Editor links die „Regel“ (also die „Formatvorlage“) anklicken
  8. rechts die Registerkarten anklicken, auf denen Einstellungen zum Text, Hintergrund, zu den Begrenzungen, zur Box, zu Listen und Tönen vorgenommen werden können. Die Effekte sind sofort zu sehen.
  9. wenn Code fertig bearbeitet, wieder kopieren und zu Sigil wechseln
  10. in Sigil alten Code durch den neuen ersetzen
  11. mit F2 kann schnell zwischen Code- und Vorschau-Ansicht umgeschaltet werden: wichtig, um den Efekt der CSS-Änderung zu kontrollieren
  12. falls etwas nicht so aussieht wie gedacht, kann der CSS-Code nun relativ einfach direkt in Sigil nachbearbeitet werden

Anstatt den Code hin und her zu kopieren, kann auch einfach

  1. von Sigil aus das CSS als Datei gespeichert und
  2. die Datei in NvU oder KompoZer eingeladen werden.
  3. Änderungen wieder speichern
  4. in Sigil aktualisieren.

Konvertierung mit calibre

Mit calibre können die folgenden Formate direkt importiert und in ein E-Book-Format umgewandelt werden (Auswahl der wichtigen Formate):

Wenn aus Word erst html erzeugt wird, was zu empfehlen ist, dann sollte Speichern als „Webseite, gefiltert“ gewählt werden (nicht einfach nur Webseite).

Mit calibre können direkt die folgenden Formate erzeugt, also exportiert, werden (Auswahl der wichtigen Formate):

Zur Konvertierung von PDFs

Validierung von EPUB-Dateien

Wichtiges und tolles Tool für EPUB-Dateien: http://code.google.com/p/epubcheck/
Siehe aber auch unten: Validierung mit Sigil (FlightCrew-Validator)

Prüfung mit Adobe Digital Editions

EPUB-Dateien können, unabhängig von EPUP-Check-Programmen, mit Adobe Digital Editions (ADE) geprüft werden. Die Prüfung besteht einfach nur darin, das EPUB anzeigen zu lassen. ADE ist sozusagen der Industriestandard für die Anzeige von EPUB. Wenn beim Durchschauen in ADE irgendetwas auffällt, sollte es in einem EPUB-Editor wie Sigil korrigiert werden,

Achtung: ADE kann sich „verschlucken“ mit dem Ergebnis, dass gar nichts mehr angezeigt wird. Das kann zum Beispiel bei DRM-geschützten EPUBs passieren, und zwar nachdem die Adobe-ID-Daten eingegeben und akzeptiert worden sind! Lösung:

Verschiedene Punkte, die beim Erzeugen von E-Books zu beachten sind

Konvertierung von Word in HTML allgemein

Formate und Formatvorlagen

Formatvorlagen und CSS

Beachtet werden sollte, dass die Datenübergabe aus Word an ein EPUB grundsätzlich den gleichen Gesetzen unterliegt wie eine Datenübergabe an ein Layout-Programm!

Niemand würde auf die Idee kommen zu behaupten, die Übergabe von Word-Daten an ein Layout-Programm sei eine einfache Sache. Vielmehr ist (seit den Urzeiten des DTP) klar, dass immer ein Profisetzer oder Grafiker sich um das Layout in InDesign, Quark oder FrameMaker zu kümmern hat und nicht etwa der Autor bereis in Word sämtliche Gestaltungsmerkmale festlegt. Das einzige, was der Autor machen kann, ist möglichst sauber zu arbeiten und für sämtliche Formatierungen Formatvorlagen zu verwenden.

Genau wie in einem Layoutprogramm muss auch in einem EPUB-Programm dafür gesorgt werden, dass die Gestaltung stimmt. Das heißt, im EPUB-Programm sind im CSS sämtliche Formatierungen festzulegen.

Wissen muss man u. a., dass den Word-Absatzformatvorlagen im EPUB (genauer: in XHTML) Klassen des p-Elements entsprechen, analoges gilt für die Zeichenformatvorlagen von Word: Ihre Entsprechung in EPUB sind Klassen des span-Elements.

Das heißt, um eine Grundformatierung des EPUBs auf Basis der in Word vorgeleisteten Formatierung hinzubekommen, sollten im CSS für das EPUB Klassen definiert werden, die dieselben Namen haben wie die Formatvorlagen in Word. Ein solches CSS ist die Basis für die Weiterverarbeitung in EPUB. Es sollte irgendwo separat, also unabhängig von dem, was aus Word herüberkommt, existieren. Am besten legt man sich eine Muster-EPUB-Datei an, die das CSS als separate Einheit enthält. Das CSS, das aus Word heraus beim Abspeichern als HTML-Datei erzeugt wird, sollte im EPUB dann durch die Muster-CSS ersetzt werden.

In der Muster-CSS sollten auch sämtliche anderen gewünschten Formatierungen (die nur im EPUB eine Rolle spielen oder in Word nicht möglich sind) definiert sein.

Schriften, Schriftgrößen, Zeilenabstände

Hängender Einzug

wird im CSS bei der Definition einer .p-Klasse erreicht. Beispiel:

.P_Vfll_fliess_n_u_haengend {\\
font-size: 1.00em;\\
text-align: left;\\
margin-top: 1.00em;\\
margin-bottom: 1.00em;\\
margin-left: 4.50em;\\
margin-right: 00.00em;\\
text-indent: -4.50em;\\
padding-top: 5px;\\
padding-bottom: 5px;\\
padding-left: 10px;\\
padding-right: 10px;\\
}

Hier wird ein hängender Einzug  erzeugt, indem margin-left auf einen bestimmten Wert (hier 4.50em) und gleichzeitig text-indent auf denselben Wert, allerdings negativ, eingestellt wird.

text-indent ist der Befehl für den Texteinzug in der ersten Zeile.

Überschriften-Gestaltung

Überschriften sollten grundsätzlich über das CSS gestaltet werden. Welche Möglichkeiten es gibt, kann auf der Seite https://wiki.selfhtml.org/wiki/CSS nachgelesen werden.

Problem mit Rahmen und Schattierungen

Wenn man eine Schattierung vergibt (Anweisung background:<Farbe>), wird zwar der gesamte Absatz hinterlegt, aber der Text stößt links und rechts direkt an die Ränder der Schattierung (nach oben und unten ist - wohl wegen der Ober- und Unterlängen der Zeichen - etwas Abstand). Dasselbe gilt für Rahmen, die mit der Anweisung border (border-top, border-bottom usw.) erzeugt werden.

Um Abstand zu bekommen, muss eine Überschrift entweder in eine Tabellenzelle gesteckt werden (denn nur hier gibt es die Anweisung border-spacing) oder man muss den gesamten Absatz mit einem div-Element umgeben, in dem Schattierung und Rahmen eingestellt werden.

Beispiel für eine reine Schattierung:

<div style="border:none;padding-top:1pt;padding-left:8pt;padding-bottom:12pt;
padding-right:4pt;background:#D9D9D9;">

<h3>Dies ist eine Überschrift</h3>

</div>

Wird bereits in Word mit Rahmen um einen Absatz gearbeitet, so kommt dieser tatsächlich als umgebendes div-Element nach HTML bzw. XHTML herüber. Eine Schattierung in Word ist dagegen eine Eigenschaft der Absatzfpormatierung selbst, d.h., sie steckt im HTML oder XHTML als Attribut im jeweiligen Absatzelement. Um einer Schattierung inneren Textabstand (padding) zuweisen zu können, muss sie aus dem Absatzelement in das div-Element verschoben werden. Leider kann bei Schattierungen nicht bereits in Word Einfluss auf den Abstand vom Text genommen werden. Das heißt, man muss im EPUB Folgendes machen:

Rahmen:
Da ein Rahmen bereits korrekt als div-Element aus Word herüberkommt, brauchen im EPUB nur noch die gewünschten Werte eingestellt zu werden.

Klassen definieren:
Am einfachsten arbeitet es sich auch bei Rahmen und Schattierungen, wenn sie über das CSS gestegelegt werden können. Das heißt, man muss im CSS entsprechende „Klassen“ definieren, etwa

div.rahmen {
border-top:2px solid black;
border-left:2px solid black;
padding-top:4pt;
padding-left:8pt;
}

und

div.schattierung {
border:none;
background:#D9D9D9;
padding-top:1pt;
padding-left:8pt;
padding-bottom:12pt;
padding-right:4pt;
}

Dann kann im div-Element im Text einfach Bezug auf die Klasse genommen werden, etwa:

<div class="schattierung">

<h3>Dies ist eine Überschrift</h3>

</div>

Das ist natürlich deutlich komfortabler und effizienter.

Page-break vor einer Überschrift

In den meisten Anleitungen zum Vorbereiten eines E-Books in Word heißt es:

Beides ist nicht wirklich richtig!

Bedacht werden muss vielmehr, dass in einem EPUB jedes Kapitel in einer separaten htm-Datei liegt. Die Frage lautet: Wie schafft man im EPUB eine Aufteilung der Kapitel auf separate htm-Dateien?

Schön wäre es, wenn die Word-HTML-Datei beim Einladen ins EPUB-Programm automatisch aufgeteilt werden könnte. Dazu bietet calibre tatsächlich entsprechende Möglichkeiten: Per path-Anweisung kann es die Struktur von Word-Dateien erkennen und eine Aufteilung auf separate htm-Dateien im EPUB vornehmen. Dabei spielt aber die Absatzeinstellung „Seitenumbruch oberhalb“ von Word keine Rolle! Vielmehr nutzt calibre die Namen der Formatvorlagen (in diesem Fall der FV, die für eine Kapitelüberschrift in Word verwendet wurde). Und insofern ist es auch unerheblich, ob ein Seitenumbruch in Word auf andere Weise, nämlich per Befehl „Seitenumbruch“ erzeugt wurde.

Lediglich, wenn das Word-HTML direkt - etwa mit Sigil - in EPUB umgewandelt wird und man ausschließlich mit dem im word-HTML vorliegenden CSS weiterarbeitet, hat die Absatzeinstellung „Seitenumbruch oberhalb“ eine Bedeutung. Aber man sollte keinesfalls so vorgehen, sondern immer

Außerdem muss man wissen, dass nur dann keine Probleme mit der Formatierung von Überschriften und deren Darstellung auf E-Readern auftreten, wenn jedes Kapitel eines E-Books in einer separaten htm-Datei im EPUB liegt. Die Formatierung mit dem h1-Element allein reicht nicht aus! Ja, es ist sogar so, dass - wie Tests gezeigt haben - manche Formatierungen (wie etwa die Vergabe von Rahmen oder Schattierungen) nur dann funktionieren, wenn im h1-Element die Anweisung „page-break-after: always“ nicht enthalten ist! Eine solche Amnweisung führt etwa in iBook dazu, dass eine leere Seite vorgeschaltet wird, die nur den Rahmen und/oder die Schattierung enthält! Fehlt die Anweisung dagegen und sind alle Kapitel in separaten htm-Dateien enthalten, klappt die Anzeige in iBook einwandfrei.

Bilder und Grafiken

Nachträgliches Austauschen von Grafiken in der HTML-Datei

Wie Tests zeigen, legt Word die Bilder in einer sehr kleinen Auflösung im HTML-Bild-Ordner ab (wenn im Format Webseite, gefiltert gespeichert). Die erste Tat, die vollbracht werden sollte, ist, diese Bilder durch die Originalbilder, die in Word eingebaut sind, zu ersetzen, denn diese haben, wenn man es richtig angestellt hat (siehe oben) die korrekte Größe und Auflösung! Allerdings muss man aufpassen, dass dadurch nicht die EPUB- bzw. die MOBI-Datei zu groß wird. Wenn eine MOBI-Datei mehr als 10 MB hat, gibt es Anzeige-Probleme (wenn eine solche Datei z.B. direkt auf einen E-Reader geladen wird); daher erlaubt Amazon das Hochladen von Dateien, die größer als 10 MB sind, nicht. Am besten ist es wohl zu schauen, welche der kleinen HTML-Bilder ausreichen und welche Bilder ausgetauscht werden sollten, damit man auf einem E-Reader alles erkennen kann.

Austausch:

  1. das übliche ZIP-Verfahren auf die Word-Datei anwenden und die Bilder aus dem ZIP-Archiv herauskopieren, dann
  2. die Bilder im HTML-Bild-Ordner durch die hochaufgelösten ersetzen (evtl. müssen zunächst die Dateinamen angepasst werden, z.B. hinsichtlich der Nummerierung: 1 durch 001 ersetzen usw.)
  3. nun im HTML-Quellcode die Angaben zu den Dateinamen und Dateinamenerweiterungen anpassen
  4. außerdem unbedingt die Angabe der Bildgrößen löschen; Word setzt nämlich beim HTML-Export bestimmte Größen fest. Eine solche Festsetzung ist überflüssig, da alle E-Book-Reader die Bilder automatisch auf die Bildschirmgröße verkleinern, falls sie größer sein sollten. Ist ein Bild kleiner als der Bildschirm (also kleiner als 600 px x 800 px), so wird es in Originalgröße dargestellt.

Eine typische Bild-Zeile im HTML-Code sieht folgendermaßen aus:

<p class="dfbild"><img id="Grafik 273" src="Dokument_und_Formatvorlagen_word_2010_12_mal_17_130223-Dateien/
image014.png" border="0" height="295" width="322"></p>

Hier kann die Angabe zu height und width komplett gelöscht werden. Danach sieht die Zeile wie folgt aus:

<p class="dfbild"><img id="Grafik 273" src="Dokument_und_Formatvorlagen_word_2010_12_mal_17_130223-Dateien/
image014.png" border="0"></p>

<hi>Alternativ zu diesem Batch-Verfahren kann natürlich jedes Bild direkt in der Vorschau-Ansicht gegen ein anderes ausgetauscht werden! Dazu einfach über den Button „Grafik einfügen“ das neue Bild wählen; anschließend das alte löschen.</hi>

Nachträgliches Austauschen von Grafiken in der EPUB-Datei

  1. EPUB-Datei mit sigil öffnen und in der Inhalts-HTML-Datei die Verweise auf die Grafiken ändern, und zwar die vorhandenen Dateierweiterungen der Grafikdateien (z.B. .jpg) durch die neuen Dateierweiterungen (z.B. .gif oder .png) ersetzen
  2. entsprechend mit sigil die OPF-Datei bearbeiten: auch hier aus den vorhandenen Dateierweiterungen die neuen machen
  3. nun Sigil schließen
  4. EPUB-Datei durch Anhängen von .zip in ZIP-Archiv umwandeln
  5. Archiv öffnen und vorhandene Grafikdateien (z.B. *.jpg) löschen;
  6. entsprechende Grafikdateien im neuen Format (z.B. *.gif oder *.png) hineinkopieren; dabei darauf achten dass die Dateinamen (bis auf die Erweiterung) identisch sind.
  7. Archiv schließen und .zip wieder wegnehmen; es liegt also wieder eine normale EPUB-Datei vor
  8. zur Prüfung die EPUB-Datei wieder mit Sigil öffnen und schauen, ob alles OK ist; dabei auch die Sigil-interne Validierung drüberlaufen lassen; zur Not entsprechende Korrekturen direkt in Sigil vornehmen

<hi>Wie bei der HTML-Datei (s.o.) kann auch im EPUB jedes Bild direkt in der Buch-Ansicht ausgetauscht werden!</hi>

Komplexbilder

Formeln

Bilder aus InDesign

Wenn das EPUB aus InDesign heraus erzeugt wurde, kann es passieren, dass die Bilder in div-Elementen eingekapselt sind, die erzeugt werden, weil die Bilder in InDesign in Rahmen stecken. Das Problem: Die Größen der Bilder werden durch die Rahmengrößen vorbestimmt. Mit anderen Worten: Selbst, wenn ein Bild (das vielleicht Text enthält) ursprünglich groß genug war, damit alles erkannt werden konnte, wird es auf einem E-Book-Reader zu klein wiedergegeben. Grund: Die Rahmengrößen, die innerhalb von InDesign vergeben wurden, führen zu class-Attributen von div-Elementen im EPUB. Die Eigenschaften der class-Attribute stecken im CSS, und hier schreibt InDesign Breite und Höhe in absoluten Pixel-Werten hinein. Das heißt, man muss

Tabellen

Probleme bereiten u.a. die Tabellen:

Farben in Tabellen (trifft auch auf den übrigen Dokumenttext zu)

  1. nachfolgende rgb-Werte komplett löschen
  2. „-moz-use-text-color“ durch „currentColor“ ersetzen (vgl. z.B. https://stackoverflow.com/questions/2283010/what-is-moz-use-text-color)
  3. beim Ersetzen mit RegEx aufpassen, dass Zeichen, die als Steuerzeichen verstanden werden könnten (wie „-“ oder „(“, „)“ ) mit Backslash versehen werden, also z. Suche nach \(, wenn nach Klammer gesucht werden soll
  4. wenn irgendwo „windowtext“ als Farbattribut auftritt, ebenfalls durch currentColor ersetzen

Umschlagbild

Inhaltsverzeichnis

siehe Calibre und Sigil

NVU

Sigil

Falscher Split: Einen falschen Split (also Seitenumbruch) im E-Book kann man am besten hier in Sigil korrigieren:

Fehlender Split, also das Einbringen eines Seitenumbruchs:

CSS: Das CSS befindet sich im Ordner „Formatierungen“: stylesheet.css. Doppelklick drauf, öffnet den CSS-Editor von Sigil. Hier können sämtliche Formatierungen nachträglich geändert werden. Am wichtigsten sind wahrscheinlich die Einstellungen zur Schrift.

Clips und Formatvorlagen: In Sigil gibt es, anders als z.B. bei Jutoh, kein Fenster, in dem die aus dem CSS zur Verfügung stehenden Formatvorlahgen (FV) angeboten werden. Dafür hat Sigil ein mächtiges Werkzeug mit den sog. Clips! Diese nutzen u.a. die RegEx-Fähigkeiten von Sigil aus. Ein Clip könnte z.B.

<p>\1</p>

sein. Markiert man in der Quelltext-Ansicht eine Textstelle und weist ihr über das Clip-Fenster diesen Clip zu, fasst Sigil die Markierung als „Ausdruck 1“ auf (der Befehl \1 greift auf diesen Ausdruck zu) und umgibt ihn mit dem p-Element. Achtung: in der Buchansicht führt ein Clip manchmal einen falschen Code aus, daher nur in der Quelltext-Ansicht mit Clips arbeiten!

Angelegt werden Clips im Clip-Editor:

Hier können auch eigene „Gruppen“, also aufklappbare Menüs, angelegt werden, in die man die eigenen Clips einbaut. Ist z.B. im CSS ein span-Befehl zum Kursivieren definiert, der etwa „Hervorkursiv“ heißt, so legt man einfach den Clip

<span class="Hervorkursiv">\1</span>

im Clip-Editor ab.

Ruft man nun das Clip-Fenster auf, kann man hier einfach auf den Clip klicken und schon wird das span-Element um die markierte Textstelle gelegt!

Clip-Fenster:

Das heißt, mit Clip-Editor und Clip-Fenster lassen sich ganz einfach alle Formatvorlagen anlegen und anwenden! Besser und effektiver geht es kaum.

Einbindung und Ersatz von Grafiken: siehe Bilder und Grafiken

IHV:

Navigation und Semantik

Eine weiter hinten stehende htm-Datei darf keinesfalls mit dem Semantik-Attribut „Text“ ausgezeichnet werden, sonst kann es passieren, dass diese Datei auf dem Kindle als „Anfangsdatei“ verstanden wird. Klickt man im funktionalen IHV auf „Anfang“, landet man nicht auf der ersten Seite (oder dem HTML-IHV), sondern mittendrin im Buch, nämlich genau bei der semantisch nicht korrekt ausgezeichneten Datei! Falls man nicht weiß, welchen Semantik-Eintrag man nehmen soll, muss ausprobiert werden (also immer wieder die EPUB-Datei mit dem Kindle Previewer in mobi umwandeln und anschauen). Oder anders herum: Falls die Navigation auf dem Kindle nicht funktioniert, kann es an falsch vergebenen Semantik-Tags liegen!

Validierung:

Calibre

Allgemeinen Konvertierungseinstellungen:

Auf Basis des in Word automatisch erzeugten IHV:

Lösung des Problems: am besten direkt in Word die Textmarken löschen (vor dem Löschen mit „Gehe zu“ prüfen, ob die jeweilige Textmarke sinnvoll ist oder nicht). Es kann auch ein Makro von J. Lyon verwendet werden, das alle Hintergrund-Textmarken auf einen Schlag entfernt. Man kann die Anker (die in HTML mit dem Anker-Tag ausgezeichnet sind) auch noch auf HTML- oder EPUB-Ebene mit den entsprechenden Programmen (NVU, Notepad oder sigil) entfernen, was bei Nutzung von RegEX kein Problem ist. Man mache sich klar: Das Word-eigene IHV spielt bei einem E-Book eigentlich keine Rolle. Wichtig ist einzig und allein das funktionale IHV, das im E-Book zur NAvigation dient.

Bei der Konvertierung ins MOBI-Format wird übrigens das IHV, egal, auf welche Weise es erzeugt wurde, immer erkannt!

Im Unterschied zu Querverweisen (die beim Abspeichern als HTML-Datei verloren gehen) kommen alle Links in epub an.

Links können außerdem nachträglich mit einem HTML-Programm wie Nvu oder direkt im EPUB-Programm Sigil gesetzt werden.

Wichtig zu wissen ist v.a., dass im HTML-Code sämtliche Link-Ziele (Anker), die in Word vergeben wurden, erhalten bleiben! D.h. also, dass z.B. Textmarken, die in Word definiert wurden, vorhanden sind. Und zwar werden sie z.B. in Nvu oder auch in Sigil „benannte Ziele“ genannt.

Beispiel:

<a href=„#postscript1“>PostScript</a>

Hier wird vom im Text angezeigten Wort „PostScript“ ein Link auf die Textmarke #postscript1 gesetzt.

Syntax:

<a href=„…“> Linkbeschreibung </a> steht für interne & externe Links. „Linkbeschreibung“ ist das im Browser bzw. im E-Book angezeigte Wort, das zusätzlich in blauer Farbe und unterstrichen kommt, was das Kennzeichen für einen Link ist.

Wo Verlinkung vornehmen?

  1. Textstelle mit Ziel-Namen kopieren
  2. per Strg-l Linkfenster aufrufen
  3. # eingeben, dann
  4. Strg-v, damit Ziel-Name aus Zwischenablage eingefügt wird
  5. OK

Ergebnis: Links erst in NvU oder Sigil einbauen!

Es hat demnach nicht immer Vorteile, alle wichtigen Dinge (wie auch die Verlinkungen) im ursprünglichen Programm (hier: Word) auszuführen! Um Doppelarbeit zu sparen, darf in Word nicht verlinkt werden.

Achtung: Die Linkziele sollten natürlich in Word vorbereitet werden, indem man Textmarken einbaut. Dabei darauf achten, dass kein Text markiert, sondern dass die Textmarken nur an der Cursorstelle eingebaut werden. Sonst gibt es im EPUB Probleme mit der Formatierung der Anker (s.u.).

Querverweise sind sowieso neu zu verlinken!

In NVU/KompoZer und Sigil werden Links gesetzt, indem in der Normalansicht eine Textstelle, von der aus verlinkt werden soll, markiert wird, dann Ctrl-l; es geht ein Fenster auf, indem das Linkziel ausgesucht werden kann; OK.

Es ist klar, dass das Ziel existieren muss.

Falls der Textinhalt der markierten Textstelle mit dem Namen der Textmarke (also des Linkziels) identisch ist, kann ein kleines Makro (in MacroExpress) verwendet werden, das den markierten Text kopiert und im Verlinkungsfenster von NvU/KompoZer oder Sigil einfügt.

Linkformatierung von Ankern / Wie Anker gesetzt werden sollten

Das Anker-Element wird auf einigen Readern und insbesondere in einigen ePub-Betrachtungsprogrammen wie ADE in blauer Schrift und unterstrichen (also wie ein Link) dargestellt. Nach meiner Untersuchung sind betroffen:

ReaderAnmerkungen
Tolinoschwarze Unterstreichung
SoftwareAnmerkungen
ADEblau unterstrichen
Aldikoblau unterstrichen
iBookskeine Unterstreichung, aber violette Schrift

Fazit: Alle Geräte oder Software, die auf ADE aufbauen, zeigen diesen Effekt, andere Geräte/Software nicht. Zum Glück gehört der Kindle zur letzten Gruppe (kein Effekt).

Anscheinend gibt es keinerlei Möglichkeit, den Effekt über das CSS zu beeinflussen!

Lösungsmöglichkeiten:

  1. Wenn es nur um Anker in Überschriften geht, so ist zu bedenken, dass man sowohl das HTML- als auch das funktionale IHV (und nur für diese werden Überschriftanker benötigt) auch durch xPath-Einstellungen in calibre erhält oder einfach in Sigil erzeugen kann. In beiden Fällen werden neue id-Attribute erzeugt, die nicht in einem a-Element stecken, sondern in einem span- oder p-Element. Und die bereiten keine Probleme. D.h. letztlich, dass man dann die stehengebliebenen a-Elemente samt der in ihnen enthaltenden id-Attribute komplett löschen kann. Das geht am besten mit RegEx in Sigil: Suche nach „<a id=„_[a-zA-Z0-9]*“>[a-zA-Z0-9 ?]*</a>“ [hier wird angenommen, dass es sich um eine Textmarke handelt, die am Anfang ein Underline-Zeichen hat, gefolgt von beliebigen Buchstaben und Zahlen sowie von beliebig vielen Blanks und Fragezeichen], ersetze durch „“, also durch nichts.
  2. Bei allen Ankern, insbesondere solchen, die nicht Überschriften betreffen:
    • Die id-Attribute aus den Ankerelementen herausnehmen und z.B. in ein Span-Element stecken; denn – und das ist die erstaunliche Erkenntnis – als letztlicher Anker reicht das id-Attribut allein aus! Es kann sich in jedem beliebigen Element befinden! [Hinweis darauf gefunden bei: http://www.mobileread.com/forums/archive/index.php/t-166994.html] Natürlich hat man das Problem, sämtliche Ankerelemente zu bearbeiten und zu entfernen und die id-Attribute anders zu verteilen. Eine gute Möglichkeit besteht darin, direkt in Sigil mit Suchen/Ersetzen zu arbeiten: Suche nach „<a id“, ersetze durch „<span id“; anschließend noch suche nach „</a>“, ersetze durch „</span>“. Beim zweiten Suchen/Ersetzen-Lauf muss man natürlich aufpassen, dass man nicht aus Versehen die abschließenden Tags von „<a href…>“ erwischt, denn die dürfen nicht verlorengehen.
      • In den Griff bekommt man das durch Nutzung von RegEx in Sigil, und zwar indem man zwischen ersten und zweiten Lauf einen weiteren dazwischenschaltet: Suche nach „(<span id=„_[a-zA-Z0-9]*“>[a-zA-Z0-9 ?]*</a>)“ [hier wird angenommen, dass es sich um eine Textmarke handelt, die am Anfang ein Underline-Zeichen hat, gefolgt von beliebigen Buchstaben und Zahlen sowie von beliebig vielen Blanks und Fragezeichen; außerdem muss durch die äußeren runden Klammern eine Gruppe gebildet werden], ersetze durch „\1#“; dann kann der dritte Lauf sein: suche nach „</a>#“, ersetze durch „</span>“. Dadurch werden nur diejenigen End-Tags erwischt, die zu den ursprünglichen „<a id“-Tags gehörten.
    • Das Problem besteht nur dann, wenn der Anker - wie es natürlich bei Textmarken oft ist - Text umfasst. M.a.W.: Wenn man Anker einfach „so“, also ohne Text, verwendet, kann kein Text falsch formatiert werden! Folgerung: a) in Sigil brauchen nur die End-Tags der Anker so versetzt zu werden, dass die Anker ganz allein für sich stehen, ohne Text einzuschließen. Das ist allerdings nicht auf einen Schlag mit RegEx möglich, sondern man müsste entweder manuell vorgehen oder in ein Programm mit Makromöglichkeiten wechseln. b) Bereits bei der Vorbereitung in Word Textmarken immer setzen, ohne Text zu markieren! c) Auch im HTML-Programm oder in Sigil oder Calibre können nachträglich Anker (oder wie es in Sigil sinnigerweise heißt: IDs) eingefügt werden, und das kann immer an der Stelle geschehen, an der der Cursor blinkt, es muss kein Text markiert werden.

HTML-Unverträglichkeiten mit EPUB und/oder MOBI

HTMLXHTML
<a name=„_Toc334608116“><a id=„_Toc334608116“>