EPUB 2 savait faire un livre ; EPUB 3 sait faire un livre augmenté. La révision de 2011, mûrie en 2014 puis stabilisée en 3.3 (2023), apporte cinq axes majeurs qui changent ce qu'un livre numérique peut être : le fixed-layout, les Media Overlays, le JavaScript, les MathML et SVG riches, et un socle d'accessibilité natif.
Fixed-layout : le livre illustré, la BD, le beau livre
Par défaut, EPUB est reflowable. Mais certains livres — albums pour enfants, bandes dessinées, manuels scolaires, guides touristiques — ont besoin d'une mise en page figée. EPUB 3 introduit le mode fixed-layout qui permet de spécifier la taille exacte de chaque page.
content.opf — métadonnées fixed-layout<meta property="rendition:layout">pre-paginated</meta>
<meta property="rendition:orientation">landscape</meta>
<meta property="rendition:spread">both</meta>
<meta property="rendition:flow">paginated</meta>
Chaque page XHTML définit alors sa propre taille via un <meta name="viewport"> :
<meta name="viewport"
content="width=1200, height=1800"/>
| Propriété | Valeurs | Usage |
|---|---|---|
rendition:layout | reflowable / pre-paginated | Mode de pagination |
rendition:orientation | auto / landscape / portrait | Orientation préférée |
rendition:spread | none / auto / both / landscape | Double page |
rendition:flow | paginated / scrolled-doc / scrolled-continuous | Défilement |
page-spread-left | sur <itemref> | Force la page gauche |
page-spread-right | sur <itemref> | Force la page droite |
Media Overlays : le livre qui se lit à voix haute
C'est l'une des fonctionnalités les plus élégantes d'EPUB 3 : la synchronisation audio-texte. Chaque phrase, chaque mot peuvent être liés à un instant précis d'un enregistrement audio. Au moment de la lecture, le texte se surligne phrase par phrase tandis que la voix avance.
Le système s'appuie sur SMIL (Synchronized Multimedia Integration Language), un standard W3C de 1998. Chaque chapitre XHTML est accompagné d'un fichier .smil qui décrit la correspondance :
OEBPS/ch01.smil<smil xmlns="http://www.w3.org/ns/SMIL"
xmlns:epub="http://www.idpf.org/2007/ops"
version="3.0">
<body>
<seq id="s01"
epub:textref="ch01.xhtml#phrase-1"
epub:type="chapter">
<par id="p1">
<text src="ch01.xhtml#phrase-1"/>
<audio src="audio/ch01.mp3"
clipBegin="0s" clipEnd="4.3s"/>
</par>
<par id="p2">
<text src="ch01.xhtml#phrase-2"/>
<audio src="audio/ch01.mp3"
clipBegin="4.3s" clipEnd="9.1s"/>
</par>
</seq>
</body>
</smil>
Applications
Livres jeunesse (lecture à voix haute assistée), méthodes de langue, livres audio synchronisés (Audible ne le gère pas, mais Apple Books et VoiceDream oui), accessibilité pour dyslexiques.
JavaScript : le livre interactif
EPUB 3 autorise JavaScript dans les pages XHTML, à condition de marquer l'item correspondant avec properties="scripted" dans le manifest.
Les usages concrets :
- Quiz et exercices interactifs pour manuels scolaires.
- Animations légères dans les livres jeunesse.
- Cartographies dynamiques, graphiques interactifs.
- Formulaires d'évaluation lecteur.
Prudence : support très inégal
Les liseuses e-ink désactivent JavaScript pour économiser la batterie et préserver la confidentialité. Apple Books, Thorium, Readium supportent bien. Kindle et Kobo refusent la plupart du JS. Ne construisez jamais un livre où la compréhension dépend des scripts — gardez-les pour l'enrichissement.
MathML : la notation mathématique
MathML permet d'intégrer des équations structurées, accessibles, et rendues par le moteur typographique du lecteur. Plus robustes qu'une image, plus accessibles qu'un LaTeX rendu.
<math xmlns="http://www.w3.org/1998/Math/MathML">
<mrow>
<msup><mi>e</mi><mrow><mi>i</mi><mi>π</mi></mrow></msup>
<mo>+</mo><mn>1</mn><mo>=</mo><mn>0</mn>
</mrow>
</math>
La plupart des liseuses rendent MathML correctement. Ceux qui ne le font pas (certains Kindle) peuvent l'afficher comme une image via un fallback.
SSML et pronunciation
EPUB 3 reconnaît SSML (Speech Synthesis Markup Language) pour guider les synthétiseurs vocaux. Utile pour les noms propres, les langues étrangères, les homographes.
<p>Je relis <span
ssml:ph="ˈniːtʃə"
xmlns:ssml="http://www.w3.org/2001/10/synthesis">Nietzsche</span>.</p>
Multi-rendition (EPUB Multiple-Rendition Publications)
Un même EPUB peut embarquer plusieurs versions : une reflowable et une fixed-layout, ou une version courte et une longue. container.xml déclare alors plusieurs rootfile, et la liseuse choisit selon ses capacités.
Scripted & remote resources
Deux propriétés sensibles :
properties="scripted"— ce document contient du JS et/ou des formulaires HTML.properties="remote-resources"— ce document référence des ressources hors de l'archive (flux audio distant, images, vidéo). Accepté par la spec mais recommandé d'éviter pour la lecture hors ligne.
EPUB 3.3 — ce qui a changé
Devenue recommandation W3C en mai 2023, EPUB 3.3 ne casse pas la compatibilité mais clarifie, précise, et modernise :
- Séparation en trois specs : Core (contenu), Packages (package et OPF), Reading Systems (ce que les lecteurs doivent faire).
- Clarification du modèle de traitement des content documents.
- Meilleure intégration avec les standards web contemporains (ARIA 1.2, WCAG 2.2).
- Définition formelle de la conformité, avec niveaux précis.
- Support reconnu des formats modernes : WebP, WOFF2, AVIF (optionnel).
Et demain ? EPUB 3.4 et W3C Publications
Le groupe de travail W3C réfléchit à une audiobook publication standardisée, à une meilleure intégration des web publications (livres lisibles directement depuis un navigateur sans téléchargement), et à des extensions pour l'interactivité éducative. L'avenir est incrémental, prudent, et collaboratif.
Nous avons vu ce qu'EPUB peut faire de plus. Voyons maintenant ce qu'EPUB sait faire de mieux que tout autre format : être accessible.