Archives pour la catégorie tech

Intégrer vos epubs à une page web

Sur votre page internet, plutôt que d’afficher un lien vers vos epubs afin qu’ils soient téléchargés pour lecture, vous pouvez fournir un accès direct avec BIBi.
Cette solution gratuite utilise un iframe dans votre page html pour y incruster le lecteur d’epubs. Elle est techniquement très simple à mettre en place puisqu’il s’agit d’uploader sur votre serveur le répertoire de l’application qui ne contient guère que du code javascript.

En pratique

Admettons que je veuille donner au lecteur la possibilité de feuilleter en ligne mon dernier epub, intitulé ex1.epub. Après avoir téléchargé les composants de l’appli et uploadé le repertoire bib sur mon serveur, je place mon fichier epub sous la racine du répertoire /bookshelf. Il ne reste plus qu’à placer sur ma page un lien pointant vers le fichier et activer le script avec ces deux lignes.

 

<iframe src="http://eforge.eu/bib/i/?book=ex1.epub" width="500" height="550" frameborder="0"></iframe>
<script src="http://eforge.eu/bib/i.js"></script>

Comme on le voit, la balise iframe pointe sur le fichier ex1.epub, avec la requête http://votre.site/bib/i/?book=ex1.epub

Et Voilà ! Il ne vous reste plus qu’à paramétrer les réglages de l’iframe et cliquer au centre pour lire l’ebook …


Mots clefs :

Conversion d’un epub 2.0 au standard 3.0

Dans cet atelier, nous allons procéder à la conversion d’un epub aux spécifications 2.0 vers 3.0 sous Sigil 0.9.5 et vérifier que tout s’est bien déroulé. Pour cela, nous utiliserons une nouvelle fonctionalité de Sigil, les plugins (greffons).

Installation des greffons epubcheck et ePub3-itizer

1- Télécharger les plugins epubcheck et ePub3-itizer. Ne pas les dézipper.

2- Après avoir ouvert Sigil, menu Greffons (Plugins) —-> Gérer les greffons (Manage plugins). Là, cliquer sur Ajouter (Add) et aller chercher le greffon téléchargé. Puis clicker sur OK. Le greffon est maintenant présent, on peut lui attribuer une icône dans la barre d’outils de Sigil comme dans la capture d’écran ci-dessous avec epubchecker.

Gestion des greffons

Gestion des greffons

 Conversion au standard EPUB 3.0

Ouvrons un epub 2.0 valide (c’est à dire qu’il a passé la vérification avec epubcheck) et dans le menu des greffons est venu s’ajouter une catégorie, Sortie—->ePub3-itizer. Lançons-le pour procéder à la conversion du fichier.

Conversion

Conversion

J’utilise un fichier de test contenant des illustrations et des notes. La conversion se déroule bien. Il faut maintenant ouvrir le fichier epub3 généré. Les en-têtes dans le fichier content.opf reflètent le passage au 3.0 et dans l’arborescence, un fichier nav.xhtml a été créé.

<package prefix="rendition: http://www.idpf.org/vocab/rendition/#" unique-identifier="bookid" version="3.0" xmlns="http://www.idpf.org/2007/opf">
En-tête fichier content.opf

Vérification avec epubcheck

Passons maintenant le fichier à la validation du fichier epub 3.0 à l’aide du second greffon installé, epubcheck.  Un petit problème est detecté car la fenêtre de log epubcheck indique check finished with warnings or errors, visiblement un souci ayant trait avec un identifiant.

Greffon epubcheck

Modification du greffon

Cette erreur est étrange, car ces identifiants sont générés automqtiquements. Serait-ce un bug ? La capture d’écran ci-dessus montre que la version d’epubcheck utilsée pour la vérification est la 3.0.1, pas forcément la dernière si l’on se réfère au site officiel epubcheck affichant 4.0.1. Nous allons donc télécharger la dernière mouture et modifier le plugin epubcheck pour qu’il la prenne en charge. Pour se rendre à l’emplacement où se trouvent les dossiers des greffons, cliquer sur le  bouton — visible sur la première capture d’écran — « Ouvrir l’emplacement des préférences ». C’est également là que se trouvent les recherches sauvegardées, les clips et les préférences de Sigil. Le dossier plugins renferme un dossier epubcheck, notre greffon, qui lui même contient le binaire java que nous allons remplacer et le script python plugin.py qui assure l’exécution du plugin. Ici, en l’occurence, un simple wrapper qui lance epubcheck-3.0.1.jar.

 # define epubcheck command line parameters
    epc_path = os.path.join(plugin_path, 'epubcheck-3.0.1.jar')
    args = ['java', '-jar', epc_path, temp_dir, '-mode', 'exp']
Wrapper

Supprimons epubcheck-3.0.1.jar et son dossier lib et remplaçons les par le contenu de la dernière version que l’on a téléchargée et son dossier lib. Il faut à présent éditer le fichier python plugin.py  (extrait ci-dessus) et modifier l’ancien nom de la cible pour le nom du fichier jar téléchargé. Les modifications faites, relançons le greffon. Miracle, cette fois, la vérification est OK ! Bien entendu, à condition deconnaître python, il est possible de concevoir des tas d’extensions utiles ou originales, comme Borkify, qui modifie le texte pour un rendu audio qui change d’accent.

Sigil et ses greffons

Sigil, l’éditeur gratuit et multiplateforme d’ebooks, a évolué depuis sa version 0.7 pour incorporer des greffons, écrits en python, que chacun peut développer et modifier à sa guise. Le site des développeurs qui ont repris la maintenance de Sigil en 2015 en retrace l’historique et détaille les améliorations apportées.
Les versions du code sont hébergées sur Github tandis que la liste des greffons disponibles est hébergées sur le forum MobileRead, un site fourmillant d’astuces et de conseils sur tout ce qui tourne autour de l’ebook.

Sigil 0.9.5

Sigil 0.9.5

Parmi les améliorations majeures de Sigil 0.9.5, il convient de signaler la prise en charge du standard EPUB 3.0 et la possibilité d’ouvrir et de travailler avec des ebooks utilisant cette norme. FlightCrew, la fonctionalité intégrée de vérification de l’epub se présente maintenant sous forme d’un plugin externe qu’il faut installer. En revanche, la vérification ne fonctionne pas avec le standard EPUB 3.0.

Une douzaine de greffons ont été développés, parmi lesquels des outils indispensables à la production d’ebooks, comme epubcheck,AddiBooksXML et les outils d’import et d’export de/vers un fichier mobi pour Kindle. L’un deux, ePub3-itizer convertit les fichiers epub 2.0 au format 3.0, ce qui est détaillé dans le billet suivant, un atelier pratique mettant en oeuvre l’installation, la modification et l’utilisation des greffons sous Sigil. Après une conversion, et lorsque des modifications ont été apportées dans le nouvel epub 3.0, il est nécessaire d’utiliser une nouveauté du menu Outils, Epub3 tools. Ce dernier comporte deux sous-entrées pour mettre à jour le manifeste du fichier epub et pour générer un table des matières NCX, compatible avec la version 2.0 car les modifications apportées à la TOC se reflètent seulement dans le fichier de navigation html.

Attribute « lang » is invalid; must be an RFC 3066 language identifier

Ce message d’erreur lors de la validation d’un epub par epubchek se présente sous une autre forme dans le validateur de Sigil et se traduit par : attribute ‘lang’ is not declared for element ‘html’.

Le problème est en général provoqué par la conversion d’un fichier PDF vers un format epub par le biais du logiciel Calibre. Cet outil plein de qualités n’est absolument pas adapté pour produire des ebooks comme le précise son auteur.

Si l’on ouvre le fichier avec Sigil, on observe que la conversion a généré une en-tête XML de ce type :
Calibre-XML

On observe dans l’en-tête XML une déclaration se rapportant à la langue,

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<html xmlns="http://www.w3.org/1999/xhtml" lang="">
Header XML

Le champs langage vide lang=’ ‘ provoque l’erreur de validation.

Pour y remédier, il suffit donc de réécrire les en-têtes XML du fichier pour qu’il réponde aux normes d’un epub, du type :

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
Header Sigil

 

Festival du domaine public à Paris

On fête souvent le cinquantenaire de la mort d’un auteur, le centenaire de la naissance d’un autre… Autant d’anniversaires juste symboliques. Rien de tel 70 ans après la mort d’un auteur : ses œuvres entrent dans le domaine public, et c’est ce qui vaut bien une célébration.

Edvard Munch, Aristide Maillol, Jean Giraudoux, Glenn Miller et bien d’autres ont la joie et le plaisir de vous inviter au premier festival du domaine public qui se déroulera à Paris du 16 au 31 janvier.

Pourquoi tous ces auteurs illustres ? Parce que leurs œuvres entrent dans le domaine public le 1er janvier 2015. Après avoir été longtemps couvertes par les droits d’auteur, elles s’offrent enfin pleinement à nous.

On a coutume de dire qu’une œuvre tombe dans le domaine public comme elle tomberait dans les limbes de l’oubli… Mais ce serait sans compter l’apport précieux des nouvelles technologies. Si une œuvre du domaine public est numérisée, loin de sombrer dans l’oubli, elle acquiert une nouvelle vie : chacun peut la redécouvrir, la diffuser voire la modifier et en faire le terreau d’une création nouvelle. Plus d’autorisation à demander ni d’argent à verser. Elle rejoint ainsi et pour toujours notre patrimoine culturel commun.

Mais pour s’approprier cette culture désormais potentiellement accessible à tous, quoi de mieux qu’un festival bien réel ? Pour s’informer, se former, se cultiver, pour numériser et créer ensemble… Pour aborder le domaine public dans toutes ses formes et sous tous les angles.

Des concerts, des projections, des ateliers, des conférences, dans des musées, des bibliothèques, des hackerspaces, des lycées… 25 événéments, 20 lieux, 30 organisations impliquées, 100 intervenants. Pendant quinze jours, à Paris et dans sa région, un festival riche et varié à entrée libre qui s’adresse à tous les publics.

Un point presse permanent sera tenu les 7 et 8 janvier 2015 à l’Espace Pierre Cardin, à l’occasion du forum « Réinventer l’alliance sciences ­société.

Le site du festival : http://festivaldomainepublic.org/

La campagne de soutien : http://fr.ulule.com/festival-domainepublic/


Mots clefs :

Comment faire la promotion de ses ebooks via Twitter ?

Depuis peu, il est possible d’élargir la diffusion des ebooks auto publiés via un compte Twitter en quelques clics de souris. Il suffit d’uploader son epub (10Mb maximum) ou un extrait, y ajouter un résumé très court (64 signes), un titre, et l’on récupère le lien à envoyer via Twitter. Ainsi, les abonnés à votre fil Twitter ont juste à cliquer sur le lien généré et peuvent lire l’ebook en ligne, dans leur navigateur.

Démonstration :

Je viens de terminer l’édition du Tome 3 du voyage en Colombie d’Édouard André et souhaite le faire savoir au public. J’uploade donc l’epub à cette adresse : https://www.iineshoten.com/e2t/en/

2014-12-20_17h29_18

L’opération effectuée, un lien a été généré ainsi que le code HTML à intégrer dans un page web, en l’occurrence l’adresse URL du livre numérique en ligne :

2014-12-20_17h43_48

Il ne reste plus qu’à envoyer le tweet.

2014-12-20_17h47_40


Mots clefs :

Atelier

  • Intégrer vos epubs à une page web

    Sur votre page internet, plutôt que d’afficher un lien vers vos epubs afin qu’ils soient téléchargés pour lecture, vous pouvez fournir un accès direct avec BIBi.
    Cette solution gratuite utilise un iframe dans votre page html pour y incruster le lecteur d’epubs. Elle est techniquement très simple à mettre en place puisqu’il s’agit d’uploader sur votre serveur le répertoire de l’application qui ne contient guère que du code javascript.

    En pratique

    Admettons que je veuille donner au lecteur la possibilité de feuilleter en ligne mon dernier epub, intitulé ex1.epub. Après avoir téléchargé les composants de l’appli et uploadé le repertoire bib sur mon serveur, je place mon fichier epub sous la racine du répertoire /bookshelf. Il ne reste plus qu’à placer sur ma page un lien pointant vers le fichier et activer le script avec ces deux lignes.

     

    <iframe src="http://eforge.eu/bib/i/?book=ex1.epub" width="500" height="550" frameborder="0"></iframe>
    <script src="http://eforge.eu/bib/i.js"></script>

    Comme on le voit, la balise iframe pointe sur le fichier ex1.epub, avec la requête http://votre.site/bib/i/?book=ex1.epub

    Et Voilà ! Il ne vous reste plus qu’à paramétrer les réglages de l’iframe et cliquer au centre pour lire l’ebook …

Token not allowed here Check finished with warnings or errors

Lors de la validation du fichier epub avec epubcheck, il est impératif de s’assurer que l’on utilise bien la dernière version d’epubcheck en se rendant sur la page https://github.com/IDPF/epubcheck/.

L’erreur Token ‘<‘ not allowed here, par exemple, ne sera pas forcément détectée avec une version d’epubcheck antérieure à 3.0, comme le montrent les tests suivants, réalisés avec les 3 versions antérieures :

Check4.0logs

Comme le précise le fichier erreur généré par epubcheck, « C:/Users/hp/Desktop/sample.epub/OEBPS/Styles/Style0001.css(15): Token ‘<‘ not allowed here »,  le problème est causé par un caractère non autorisé se trouvant dans la feuille de style à la ligne 15.

Bien que l’outil interne de validation Sigil ne détecte aucune erreur (« Aucun problème trouvé ! »), il est toujours prudent d’utiliser la validation des feuilles de style intégrée à Sigil qui envoie la feuille de style sur http://jigsaw.w3.org/css-validator/ :

validationW3C

validation_CSS

 

Ebook avec DRM : une mauvaise idée

L’expérience utilisateur, le grand mot est lâché : exp ut, ou UX, pour les intimes. Tous les géants du Net luttent pour nous apporter la meilleure, en essayant de nous convaincre que le pistage en vue de nous « connaître mieux » ne sert que nos intérêts de consommateurs. Et personne n’y croit !

En ce qui concerne la protection des contenus numériques, après la marche arrière opérée par les distributeurs de musique qui avaient vainement tenté de verrouiller le marché, les éditeurs ont donné tête baissé dans le piège tendu par les « contrôleurs de contenu » qui ont agité l’épouvantail du piratage pour maîtriser le marché de la distribution… mais se sont bien gardés de publier des études étayant leurs boniments.

Nous avons montré dans un précédent billet que la protection par DRM était techniquement dépassée, et qu’il existera toujours des moyens simples pour contourner le verrouillage et « pirater » (avant on disait prêter/donner) un livre numérique.

La désastreuse expérience DRM du lecteur d’ebook

Comme le résume fort bien la planche ci-dessous, on commence par acheter un livre qu’on ne peut pas lire en raison d’un quelconque problème technique imprévu : logiciel pas à jour, système d’exploitation pas supporté, identifiants perdus, absents… On finit par récupérer un software pour déplomber son achat, ou pire, on va re-télécharger l’ebook sur un site de torrents. Bilan : une grosse perte de temps et une grosse frustration.

Des dizaines d’articles[1] ont été écrits par des lecteurs souhaitant partager leur frustration suite à l’achat d’un livre qu’ils ne pouvaient pas afficher sur leur liseuse sans s’inscrire au préalable chez Adobe (et se faire spammer après le piratage de sa base de données), télécharger ADE (qui espionne toutes nos lectures), et finalement se rendre compte que non, on ne peut pas passer ce livre sur son lecteur Sony ou autre Ipad.

the_brads_drm

Le parcours de combattant du lecteur DRM (source The Brads – Why DRM Doesn’t Work)

Vous n’achetez pas un ebook avec DRM, vous le louez !

En pratique, si j’achète un livre et le télécharge sur mon Kobo, ma femme ne peut pas le lire sur son Ipad. Si mon Kobo est cassé, mon livre est cassé ; quant à le transmettre à mes enfants… n’en parlons même pas. Qui sait si dans 5 ou 10 ans, la société qui gère les DRM ne décidera pas d’employer une nouvelle technologie, plus « sûre » et incompatible avec vos anciens achats… Le pire ayant été atteint par Microsoft qui a réussi l’exploit de produire un lecteur MP3 incapable de lire les formats Microsoft (le baladeur Zune ne lit pas la musque achetée légalement sur sa plateforme MSN Music).

Info désintox : les DRM nuisent aux ventes numériques

Vendre la peur du méchant vilain pirate aux éditeurs et distributeurs de contenu a des conséquences sur les ventes, malgré ce que voudraient nous faire croire les… vendeurs de DRM. Toutes les dernières études[2] montrent que les ebooks sans DRM se vendent mieux.

 

Sondage : DRM ou sans DRM ?

Sondage : DRM ou sans DRM ? (source Actualitté)

Comparatifs de vente sur Amazon avec et sans DRM (source http://authorearnings.com)

DRM : un moyen efficace pour empêcher les malvoyants de lire un livre numérique

Si des solutions ont été développées pour les malvoyants (TTS par Daysy notamment), elles ne peuvent être mises en place que sur un fichier epub libre de DRM. En pratique, cela réduit le volume de la bibliothèque numérique du malvoyant de 99% car il ne pourra pas reproduire le texte de son ebook sur un afficheur Braille ou par synthèse vocale[3].

Pour terminer sur une note ironique, Harper&Collins ont établi en 2013 le nombre de fois qu’un livre pouvait être prêté à une bibliothèque avant que son verrou DRM ne se ferme : 26. La compagnie expliquait alors que ce chiffre correspondait à la durée de vie moyenne d’un livre papier (average lifespan of a print book, and wear and tear on circulating copies).

[1] http://www.alain-lefebvre.com/ebooks-la-galere-des-drm-ou-comment-les-contourner/ et http://korben.info/fnac-supprimer-drm-ebook.html

[2] http://www.numerama.com/magazine/5491-tous-n-ont-pas-encore-compris-que-les-drm-freinaient-les-ventes.html

http://www.numerama.com/magazine/4019-fnacmusic-vend-deux-fois-mieux-sans-drm.html et

À lire sur Numerama : Un éditeur supprime les DRM et devient un leader sur le marché des ebooks

[3] Les DRM freinent l’innovation au service du handicap https://www.actualitte.com/usages/drmday-les-drm-freinent-l-innovation-au-service-du-handicap-49868.htm et DRM For Persons Who are Blind AND/OR Print Disabled (http://www.w3.org/2000/12/drm-ws/pp/daisy.html)

Question d’un auteur auto-édité : DRM ou pas ?

Les DRM, pour quoi faire ?

Les auteurs qui s’auto-éditent, au moment de distribuer sur Internet leur nouvelle oeuvre  numérique, sont amenés à se prononcer sur l’emploi ou non de DRM. Certaines plateformes, comme Amazon, imposent systématiquement cette condition pour mettre en ligne les ebooks, avec les conséquences que l’on connaît pour le lecteur : le livre acheté ne peut être cédé (même après la mort de l’acheteur), il ne peut être lu sur un autre support de lecture, il ne peut être prêté, etc. Nous reviendrons sur ce sujet dans un prochain billet.

Les DRM d’Amazon

Les liseuses Kindle ne lisent pas de fichiers au format epub, mais de type formats .mobi (MobiPocket Reader) ou .azw. Cette dernière extension a la particularité d’inclure un DRM. Il est possible d’ouvrir les fichiers de type .mobi avec des outils comme Moby Unpack (il faut préalablement avoir installé Python sur la machine). D’autres outils permettent également de libérer le fichier .awz, comme le montre le résultat du test ci-dessous.

Lancé dans la console, le script DRMcheck.py décèle le type de compression du fichier  B00IANAT78_EBOK.azw et indique qu’il est pourvu d’un DRM. Moby Unpack (à gauche) ne parvient pas à lire le contenu du fichier et termine sur « Processing K8 format Ebook … Error: Unpacking Failed« . Soumis à l’assaut d’un autre logiciel, le fichier finit par être décrypté, comme le montre la seconde ligne de commande dans la console « compression unencrypted« .

Décryptage d'un fichier AZM DRM

Décryptage d’un fichier AZM

À présent, Moby Unpack va parvenir à décompresser le fichier, qui s’appelle désormais [FIXED]B00IANAT78_EBOK.azw avec une arborescence des répertoires correspondant aux différentes moutures de Kindle. Le répertoire « mobi8 » contient un fichier epub, qui est la source de l’ebook, passé à la moulinette de kindlegen, et les sous-dossiers contiennent les fichier html, feuilles de style, etc. propres au format EPUB.

Décompression du fichier azw avec Moby Unpack

Décompression du fichier azw avec Moby Unpack

Nous venons de le voir, la protection DRM n’est pas infaillible. Il existe d’autres méthodes de contournement, automatisées ou non : par exemple, ce robot qui tourne les pages et scanne le texte pour l’envoyer sur le cloud, ce qui permet de récupérer en retour une version qui passera à l’OCR ou en TTS (text to speech). On peut même se passer de robots, tout depend du coût de la main d’oeuvre.

Robot tournant les pages Kindle

Robot tournant les pages Kindle via Lego NTX pour OCR Source http://hackaday.soup.io/

Les DRM Adobe

Certains distributeurs d’ebooks au format .epub imposent des DRM utilisant la technologie Adobe. Là encore, il existe des outils, gratuits ou non, permettant de se débarrasser de la protection DRM : on le voit dans le test ci-dessous, réalisé sur un fichier encrypté (protégé par DRM) téléchargé au travers d’un lien .acsm (Adobe Content Server Management). Nous avons testé d’autres applications qui ont donné un résultat similaire.

Déplombage des DRM d'Adobe Content Server

Déplombage des DRM d’Adobe Content Server

Conclusion

À moins de produire un best seller dont les ventes rivalisent avec celles d’Harry Potier, il est peu probable que le premier auto-éditeur venu voie son oeuvre se retrouver sur The Pirate Bay. Or, outre sa piètre efficacité contre le piratage de masse ou artisanal, le DRM a un coût, forcément répercuté sur le prix du livre. Pourquoi imposer au lecteur honnête — la majorité silencieuse ? —  le coût et les inconvénients d’un système de protection des contenus inefficace ? N’est-ce pas tenter le hacker qui sommeille ? Et puis, quand bien même, être piraté, c’est aussi un peu le début de la gloire… Pour terminer, rappelons-nous les mots de Jeff Bezos dans sa lettre ouverte à la Guilde des auteurs il y a des années lumières… en 2002 :

When someone buys a book, they are also buying the right to resell that book, to loan it out, or to even give it away if they want. Everyone understands this.  (Jeff Bezos Amzon CEO)


Mots clefs :