Come posso implementare un lettore EPUB in JavaScript?

7

Mi chiedo se posso creare un lettore EPUB (standard gratuito e aperto per gli ebook) in JavaScript. I requisiti di base sarebbero:

  1. Parti del server del lettore EPUB da un'API del server.
  2. Leggi i dati EPUB in JavaScript.
  3. Renderlo a pagina.
  4. Fornisci alcune funzionalità aggiuntive, come evidenziazioni di testo o note di pagina.

Non ho informazioni su come potrei fare questo. Sono disposto a provare un progetto prototipo. Quali sono i passi che potrei prendere per implementare una cosa del genere?

    
posta Vlad Nicula 09.10.2012 - 14:42
fonte

1 risposta

8

Dai tuoi commenti sembra che tu sia in una fase concettuale molto precoce e desideri una guida generale ... beh, sarà molto difficile da dare, dato che l'intero argomento è piuttosto ampio. Ma in generale, quello che vuoi fare è:

  1. Leggi e analizza un file epub usando javascript.
  2. Genera HTML che rappresenta il contenuto (e immagini in linea / SVG / ecc.)

Bene, questo è ad un livello molto alto, e non ci aiuta molto. È possibile suddividere il passaggio 1 leggendo il formato epub stesso (ad esempio: articolo di wikipedia e informazioni generali ). Molto rapidamente, dovresti notare che il formato utilizza OCF per riunire più file, quindi il tuo primo problema sarà creare un lettore OCF, il che significa anche che dovrai decomprimere i dati in javascript (i link di Florian Margaine dovrebbero darti un'idea di come gli altri hanno risolto questo problema). A questo punto, inizierei a cercare le implementazioni esistenti in javascript, perché probabilmente non vorrai implementare tutto questo da zero. Tutto questo prima ancora che tocchiamo i contenuti effettivi del file epub. Una volta superato questo punto, dovresti essere in grado di leggere i contenuti effettivi e provare a tradurli in HTML.

Per quanto riguarda il passo 2, inizierei osservando le varie funzionalità fornite da epub - testo, stile CSS, immagini incorporate, ecc. - e iniziare ad attaccare quelli uno alla volta, iniziando con quello che dà il massimo ritorno per il mio tempo (probabilmente testo ...).

    
risposta data 09.10.2012 - 15:20
fonte

Leggi altre domande sui tag