Epub Tools

Une série d'outils plus ou moins simples et plus ou moins utiles pour manipuler des epubs dans un navigateur web, nottament la gestion des annotations. En cours d'écriture sans être certain que cela arrive quelque part.

Présentation

Le projet est né à la croisée de plusieurs besoins :

  • L'impossibilité de lire une base de donnée calibre sur le réseau et donc la volonté d'écrire une application web capable de le faire.
  • Récupérer les annotations de ma liseuse, les convertir au format standard des annotations web et les stocker quelque part où je puisse m'y référer facilement.

De tout ce qui précède :

  • Les outils sont là pour répondre à mes besoins ; il ne deviendront sans doute jamais un vrai lecteur d'epub.
  • Si d'éventuels utilisateurs proposent des évolutions pertinentes, elles pourront être intégrées. Sinon, le code source est libre.

Enfin, la decouverte du logiciel Foliate, une application GTK, a quelque peu réorienté ce projet. L'application fait en gros ce que j'envisageais de faire ici. Voir aussi ma note sur le principe du contribuer ou créer. Il se peut donc que le projet devienne un plugin pour Foliate capable de lire les annotations de ma liseuse.

CybookAnnotations

Présentation

Ma liseuse cybook utilise Adobe Digital Annotations et le framework XPointer pour stocker les annotations. Le but de l'outil CybookAnnotations est de récupérer ces annotations pour les convertir en un format plus standard, l'epubcfi.

Utilisation

import {CybookAnnotations} from './path/to/epub-tools/CybookAnnotations.js';

const annotations = new CybookAnnotations(document.getElementById('annot-loader'));
annotations.addEventListener('annotations-loaded', () => {
    for (const annotation of annotations) {
        console.log(annotation);
    }
});

API

EpubData

Présentation

Un outil extrêmement simple qui permet de lire quelques données pertinentes d'un epub, principalement le fichier content.opf.

Dépendances

  • zipjs, pour dézipper les epubs.

Utilisation

import {EpubData} from './path/to/epub-tools/EpubData.js';

const epubData = new EpubData(document.getElementById('epub-loader'));
epubData.addEventListener('epubdata-loaded', () => {
    // do something with data
});

API

Licence de diffusion

epub tools Copyright (C) 2019 Rui Nibau

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.

Ressources et références

Titre
EPUB Canonical Fragment Identifiers 1-1
Auteurs
  • Peter SOROTOKIN
  • Garth CONBOY
  • Brady DUGA
  • John RIVLIN
  • Don BEAVER
  • Kevin BALLARD
  • Alastair FETTES
  • Daniel WECK
Éditeur
www.idpf.org
Date
Titre
XPointer Framework
Auteurs
  • Paul GROSSO
  • Eve MALER
  • Jonathan MARSH
  • Norman WALSH
Éditeur
W3C
Date