Comincia col farlo. Se hai un EPUB a portata di mano, serve solo questo.
.epub a .zip Ecco fatto. Nessun software particolare. Un EPUB è uno ZIP, quindi si apre senza nemmeno un avviso.
Potresti pensare: «se si decomprime, allora comprimere una cartella e rinominarla in .epub fa un EPUB». Non è così semplice, per via delle regole su come dev'essere compresso descritte nella sezione successiva.
Aperto, di solito si presenta così.
OEBPS — quel nome di cartella, e come le cose sono divise al suo interno, variano a seconda dello strumento che l'ha costruito. Potrebbe essere item oppure xhtml al suo posto, e va benissimo.
Quello che non puoi cambiare, né di nome né di posizione, è mimetype in testa e META-INF/container.xml . Quei due sono fissi e tutto il resto è libero: è questo il passo uno per capire la struttura.
Il suo contenuto è una sola riga.
Il suo compito è dichiarare «questo ZIP è un EPUB». Ma arriva con regole severe che nessun altro file ha.
Un'app di lettura può decidere «questo è un EPUB» leggendo solo i primi byte del file. È per questo che posizione e forma sono inchiodate.
Comprimi una cartella con uno strumento normale e non puoi scegliere l'ordine dei file, e mimetype finisce compresso insieme a tutto il resto. Il risultato: lo rinomini in .epub e le app di lettura non lo aprono.
Soddisfare la condizione «per primo, non compresso» significa eseguire la compressione in due passaggi separati. È la primissima cosa che fa uno strumento di costruzione EPUB.
META-INF/container.xml si presenta così.
Fa esattamente una cosa: dice «le informazioni del libro stanno in OEBPS/content.opf ».
È grazie a quel cartello che i nomi delle cartelle possono essere liberi. Un'app di lettura guarda prima META-INF/container.xml e va dove punta.
È il file più importante di un EPUB. Si divide in tre parti.
| Parte | Che cosa fa |
|---|---|
| metadata | Titolo, autore, lingua — le informazioni del libro stesso |
| manifest | Un elenco di tutti i file inclusi |
| spine | L'ordine in cui si voltano le pagine |
Quello da tenere d'occhio è dc:title . Ciò che compare sullo scaffale di un'app di lettura è questo valore, non il nome del file. Per quanto tu abbia nominato con cura il file, se questo è vuoto lo scaffale mostra «Untitled».
dc:language conta anch'esso. Metti it per l'italiano, ja per il giapponese. Senza, un'app di lettura potrebbe non applicare le regole di composizione della lingua — cosa che pesa soprattutto in giapponese.
Ogni file dell'EPUB dev'essere registrato qui. Aggiungi un'immagine e dimentica di registrarla, e già solo questo è un errore. Il contrario — registrata ma non presente — è anch'esso un errore.
Il file dell'indice è contrassegnato con properties="nav" , che è il suo modo di dire «questo file è l'indice».
manifest è l'elenco di ciò che c'è dentro; spine è in che ordine si legge. L'ordine qui diventa l'ordine delle pagine.
E la parte che conta di più in un libro giapponese è page-progression-direction .
| Valore | Significato | Libri che lo usano |
|---|---|---|
| rtl | Avanza da destra a sinistra | Scrittura verticale, manga |
| ltr | Avanza da sinistra a destra | Scrittura orizzontale |
Lascialo fuori da un libro composto in verticale e le pagine si voltano al contrario. È una delle prime cose da controllare quando la scrittura verticale non funziona.
EPUB 3 richiede sempre l'indice come file a sé. Sembra un normale elenco di collegamenti in HTML, distinto dal marcatore epub:type="toc" .
È questo che compare quando chi legge preme il pulsante dell'indice. Se manca un file collegato, hai un libro in cui non si può navigare.
Nel vecchio EPUB 2, un file chiamato toc.ncx faceva il lavoro dell'indice. EPUB 3 l'ha sostituito con nav.xhtml , ma alcuni EPUB includono entrambi perché le app di lettura più vecchie continuino a funzionare.
Da qui in poi è praticamente uguale a una pagina web.
Come dividi il testo dipende da te, ma un singolo file troppo grande rende lente le app di lettura, quindi dividere per capitolo è la norma.
Come hai visto, la struttura di un EPUB non è complicata. Testo, immagini e istruzioni di impaginazione impacchettati in una scatola con un cartello e un elenco — tutto qui.
Le regole da rispettare, però, sono pignole.
mimetype va per primo, non compressomanifest spine Se ne manca uno, il libro non si apre, o viene respinto al caricamento sullo store. E la causa dell'errore di solito non si vede da ciò che appare sullo schermo.
Per questo, nella produzione reale, si usa uno strumento che monta la struttura a partire da un manoscritto o da immagini. Anche così, aver guardato dentro una volta significa che puoi indovinare dove guardare quando qualcosa va storto — ed è proprio questo lo scopo dell'articolo.
EPUB FACTORY costruisce automaticamente ogni parte della struttura descritta qui. Basta scegliere una cartella di immagini o un manoscritto di testo. Senza account, senza installare nulla.
Prova EPUB FACTORY