giovedì 12 gennaio 2012

Come modificare un file MOBI

Come abbiamo già visto, il formato MOBI è un formato alternativo allo EPUB per realizzare ebooks che, a differenza del PDF, si possono adattare alle dimensioni degli schermi e sono quindi più adatti a essere visualizzati su lettori di varie dimensioni: dal computer, al tablet, allo smartphone.
Sia lo EPUB che il MOBI sono basati sullo stesso concetto, ossia il ricorso a un linguaggio fluido, non definito rigidamente ma capace di adattarsi allo spazio di cui dispone. La stessa strategia usata anche per le pagine web, insomma, e infatti i due formati si fondano sullo XML e sullo XHTML La grande differenza, però, è che lo EPUB è un formato libero, mentre il MOBI è un formato proprietario, ed è una differenza che si fa sentire, quando guardiamo agli strumenti disponibili per creare e modificare questi due formati. Se per crearli possiamo utilizzare Calibre in entrambi i casi, con esiti più o meno soddisfacenti, a tutt’oggi non esiste un programma equivalente a Sigil per modificare un file MOBI. Probabilmente, continuerà a non esistere anche nell’immediato futuro.
Come si può dunque modificare un file MOBI, una volta che lo abbiamo creato o acquistato? Nel secondo caso, la risposta molto spesso è “non si può”, ma lasciamo perdere per il momento questo dettaglio. Modificare un file MOBI è possibile, ma ci costringe a prendere strade diverse, rispetto a quelle che potremmo utilizzare per un EPUB. Anzi, sarebbe più opportuno parlare di strade alternativa, dato che in realtà non sono poi così diverse: possiamo utilizzare gli stessi strumenti di cui ci serviamo per gli EPUB, soltanto che, prima, dovremo sottoporre i nostri file MOBI a qualche piccolo intervento chirurgico. Vediamo come.

Immaginiamo di avere a disposizione un file MOBI privo di DRM (ebbene sì, ne esistono, anche se non ne troverete molti su Amazon). Un MOBI è composto da un insieme di file XHTML, più altre cose che al momento non hanno importanza, come le immagini di copertina, il file TOC (l’indice dell’ebook) e così via. Possiamo vederlo facilmente, aprendo un MOBI con un programma come WinRAR e simili. La struttura di un MOBI ci suggerisce dunque due possibili strategie, per modificarlo a seconda delle nostre esigenze, due strategie indirette ma efficaci: convertirlo in HTML, oppure convertirlo in EPUB.
Entrambe queste operazioni le possiamo svolgere con Calibre. Importiamo il nostro file MOBI, clicchiamo su “Converti libri” e poi scegliamo il formato in cui convertirlo. Personalmente, ritengo sia più comodo convertirlo in EPUB, ma altri preferiscono utilizzare il formato HTML. A voi la scelta. Se vi sentite più a vostro agio lavorando sullo EPUB, convertitelo in EPUB; se lo HTML vi è amico, convertitelo in HTML. In entrambi i casi, dopo la conversione avremo il nostro ebook in un formato su cui, finalmente, potremo lavorare.
Diciamo dunque che lo abbiamo convertito in EPUB. Il risultato può essere più o meno buono, a seconda dei casi, ma questo è secondario, perché adesso potremo modificare il file come vogliamo, correggere tutti gli errori, inserire eventuali indici, immagini, link, e tutto ciò che ci sembra opportuno inserire. Lanciamo Sigil, apriamo lo EPUB che abbiamo ottenuto attraverso Calibre e arrotoliamoci le maniche, perché è il momento di lavorare.
Ho già dedicato svariati articoli a Sigil e a come eseguire diverse operazioni utilizzando questo programma, per cui non mi sembra il caso di ripetermi anche qui. In ogni caso, il punto è questo: il file MOBI originario è adesso diventato un file EPUB e possiamo trattarlo proprio come ogni altro EPUB, alla faccia della Amazon. Solo la fantasia e la nostra conoscenza di Sigil (e dello XML) possono limitarci.
Una volta che abbiamo finito le modifiche, però, potremmo anche avere voglia di recuperare il nostro file MOBI, soprattutto se abbiamo intenzione di utilizzarlo con lettori come il Kindle, che non supportano lo EPUB. Niente di più facile, basta eseguire l’operazione inversa. Apriamo di nuovo Calibre, importiamo il nostro EPUB (ed ex MOBI) opportunamente modificato e corretto e poi sotto con un altro giro su “Converti libri”. Questa volta, la nostra conversione sarà dallo EPUB (formato di input) al MOBI (formato di output). Se tutto andrà bene, avremo riottenuto il nostro MOBI di partenza, ma modificato come volevamo noi, pronto a essere caricato su qualsiasi lettore vorremo utilizzare (beh, non che ci siano poi così tante alternative, in effetti).
Tutto ciò, come si diceva, vale per i MOBI privi di DRM.
E se il nostro MOBI è protetto da DRM, come lo sono quasi tutti gli ebooks acquistati su Amazon? Beh, qui il discorso si fa più complesso e meno legale. Nel caso degli ebooks, la protezione garantita dai DRM consiste di solito in una operazione piuttosto semplice: il contenuto dello ebook è criptato e può essere decrittato, al momento della lettura, attraverso una chiave che si trova all’interno del nostro lettore e che è registrata a nostro nome. Un ottimo esempio di crittografia di questo tipo ci è fornito proprio da Adobe Digital Editions.
Cosa fare in questi casi? Il procedimento per rimuovere i DRM consiste di solito nel recuperare la chiave interna al nostro lettore, utilizzarla per decrittare lo ebook e produrre così una copia non criptata del file. Come è facile capire, questa operazione non è gradita dalle case editrici ma, per chi fosse interessato (a fini puramente educativi, ovvio), è possibile trovare con una certa facilità guide per rimuovere i DRM, con una ricerca su Google, anche se spesso richiedono una vaga conoscenza del Python (linguaggio in cui sono realizzati gli strumenti usati di solito). Buona ricerca!

1 commento:

  1. Mi hanno regalato un po' di tempo un Kindle e ho già convertito diversi libri con Calibre.
    Fra questi libri ho convertito anche dei tutorial che descrivono passo passa una procedura con un sacco di immagini. Rispetto al formato originale (pdf di solito), Calibre inserisce alcune immagini in modo non corretto. Potrei usare il metodo suggerito per inserirle nel punto corretto? La conversione da HTML o da EPUB non le sposterebbe di nuovo? C'è qualche procedura alternativa che potrei usare?

    RispondiElimina