Vous êtes sur la page 1sur 28

Le défi : Transformer un livre papier en EPUB en n’utilisant que

des logiciels libres et gratuits sous Ubuntu


Prologue

Sous Linux en général, et sous Ubuntu en particulier, il est très simple de créer un EPUB si l’on part d’un
texte que l’on saisit soi-même au clavier.
LibreOffice comporte un module de base qui permet cette transformation, et l’extension eLAIX permet
même de créer des EPUB 3 interactifs.
D’autre part, Calibre, lui aussi permet de créer rapidement un EPUB en partant d’un fichier ODT créé
avec LibreOffice. C’est du reste la méthode que je préfère, car si le texte comporte des notes de bas de page,
les appels de notes et les retours sont bien gérés par Calibre.
Il est également possible de saisir son texte directement dans Sigil qui va créer aussi un EPUB conforme
aux normes. Cependant, cette méthode présente un inconvénient majeur à mes yeux : il n’y a pas de contrôle
orthographique sérieux possible. C’est pourquoi je privilégie LibreOffice pour la saisie du texte.

Mais l’affaire se complique dès qu’il s’agit de transformer un livre papier en EPUB.
On a besoin pour ce faire de scanner les pages du livre, puis de faire une reconnaissance de caractères
(OCR), et enfin de récupérer un texte « propre ».
C’est l’objet de ce petit livret que d’expliquer la méthode que j’ai mise au point après de longues heures
d’essais et de tâtonnements.

Ce document est créé en PDF car il comporte de nombreuses copies d’écran et facile à imprimer.
Les outils

1 — L’ordinateur
Ce tutoriel a été réalisé avec cette configuration :

Il a été testé également sur cette configuration :

Comme vous pouvez le constater, on est un peu aux extrêmes… Tout cela pour dire simplement que ça
marche, quelle que soit la configuration de votre machine. Simplement, ce sera plus ou moins rapide.

Si vous en avez la possibilité, je vous conseille d’installer un deuxième moniteur. Cela dépend de votre
carte graphique… Très utile pour la « révision » de son travail.

2 — Le scanner
Mon scanner est un Canon Lide 110. C’est un modèle assez basique, mais il est reconnu par « Sane », le
module d’acquisition d’Ubuntu. Je pars de l’hypothèse que vous avez déjà un scanner installé et qui
fonctionne, mais si vous envisagez d’en acquérir un, je vous conseille d’aller sur le site de SANE :
http://www.sane-project.org/cgi-bin/driver.pl ou sur cette page : http://www.sane-project.org/sane-mfgs.html
qui donne la liste complète des scanners compatibles. Copie d’écran ci-dessous :
3 — Les logiciels
Avec la distribution Ubuntu, vous avez « LibreOffice » installé.
Normalement, vous avez aussi « Simple Scan ».
Pour compléter la panoplie, nous aurons besoin de :

PDF-Shuffler : https://doc.ubuntu-fr.org/pdfshuffler

gImageReader : https://github.com/manisandro/gImageReader

Shutter : http://shutter-project.org/
Logiciel de capture d’écran, très utile et dont nous verrons l’usage plus loin.
Pour un réel contrôle orthographique :
Antidote. Ce logiciel est payant et parfaitement compatible avec LibreOffice. Disponible dans divers
magasins ou en ligne : https://www.druide.com/boutique/druide/index.php

Calibre : Gestionnaire de bibliothèque de livres numériques qui comprend un module de conversion.


http://www.calibre-ebook.com/download_linux
ou : https://doc.ubuntu-fr.org/calibre

Tous ces logiciels existent dans les dépôts officiels (apt) une simple recherche dans Ubuntu
https://doc.ubuntu-fr.org/ vous donnera les liens.
Comparaison EPUB — PDF

Le format EPUB
Un livre au format EPUB est composé de plusieurs dossiers et fichiers réunis dans un conteneur qui porte
l’extension EPUB.
Il contient du texte (fichiers HTML), des images (fichiers .jpg, .png ou .svg), des feuilles de style
(fichiers CSS) ainsi que des fichiers décrivant la structure du livre et ses métadonnées (l’ensemble des
informations — auteur, titre, date de publication, ISBN... – permettant le bon référencement bibliographique
de l’ouvrage).
EPUB est conçu pour faciliter la mise en page du contenu, le texte affiché étant ajusté au tout dernier
moment en fonction du dispositif d’affichage et des choix ergonomiques du lecteur au moment précis de la
lecture, choix totalement différent de celui du format PDF. Conçu pour satisfaire les besoins internes des
éditeurs comme les contraintes de la distribution, il n’a pour le moment (2016) pas de concurrent général
dans ce domaine, mais seulement des formats plus spécialisés.
EPUB est devenu un standard en 2007, lorsque la version EPUB 2 a été adoptée par l’International
Digital Publishing Forum (IDPF), remplaçant le standard Open eBook. Le format EPUB était initialement
prévu essentiellement pour du texte courant, ce qui en limitait l’intérêt dans le cas des livres exigeant une
mise en page avancée tels les bandes dessinées ou les livres techniques. Les normes EPUB 2, puis EPUB 3
(2014), ont comblé ces lacunes

Le format PDF
Le Portable Document Format, communément abrégé en PDF, est un langage de description de pages
créée par la société Adobe Systems en 1993 et devenu un standard ISO.
La spécificité du PDF est de préserver la mise en forme d’un fichier — polices d’écritures, images, objets
graphiques, etc. — telle qu’elle a été définie par son auteur, et cela quels que soient le logiciel, le système
d’exploitation et l’ordinateur utilisés pour l’imprimer ou le visualiser.

L’EPUB et le PDF reposent sur des logiques tout à fait différentes.


Le PDF suit une logique visuelle, correspondant à la page papier. Il a initialement été pensé pour
échanger des fichiers tout en préservant la mise en forme d’origine et sert aujourd’hui de base à
l’impression.
L’EPUB est au contraire à l’origine une forme de publication en flux, s’adaptant visuellement et
fonctionnellement à son support de lecture : taille de l’écran, capacités d’interaction, etc.

Or, si le PDF et l’EPUB n’ont pas du tout la même logique, ils n’ont pas non plus les mêmes
soubassements techniques.
Le code du fichier EPUB spécifie la fonction de chaque élément dans le texte (titre, paragraphe, élément
d’une liste, citation…) pour leur associer ensuite une façon de s’afficher ou de se comporter.
Rien dans un fichier PDF n’indique le rôle que jouent les éléments de contenu, autrement que par leur
apparence : on « voit » que tel titre est un titre de chapitre car il est graphiquement distinct des autres.
Malheureusement, contrairement à un humain qui sait implicitement distinguer un titre de chapitre du reste
du texte par sa simple différence graphique, aucun logiciel ne « voit » cela par lui-même.
Dans la conversion du PDF vers l’EPUB, il faut donc redonner à chaque élément du texte sa fonction.
Cela peut se faire en associant aux données géométriques de la maquette une structure fonctionnelle.
Mais peu de logiciels permettent de le faire de manière satisfaisante et il reste indispensable de procéder à
une validation humaine page à page du résultat.
Dans la plupart des cas, nous récupérons un texte brut sans aucune distinction. Tout le travail de
structuration est alors à refaire.
Il faut ajouter à cela qu’un PDF peut réserver quelques surprises. Peu importe la manière dont a été géré
le contenu tant qu’il apparaît « comme il faut ». Ainsi, un texte visuellement linéaire peut en fait ne pas l’être
et apparaître déstructuré lorsqu’on le copie. Des contenus invisibles, camouflés dans un bloc de texte mis en
blanc, réapparaîtront au milieu du texte récupéré.
Les cas de déstructuration sont nombreux : notes de bas de page réparties sur deux pages, césures de fin
de ligne, éléments des cellules d’un tableau éparpillés, etc.
La conversion de documents PDF

Ce que dit la Documentation de Calibre à ce sujet :

Les documents PDF sont les pires formats à partir desquels on peut convertir. C’est un format à taille de
page et placement de texte fixe. Ce qui veut dire qu’il est très difficile de déterminer où un paragraphe
commence et l’autre finit.
Aussi, ils ont souvent des en-têtes et des pieds de page qui font partie du document et qui seront inclus
dans le texte.
Quelques limitations des entrées PDF sont :
Les documents complexes, à multiple colonne et basé sur des images ne sont pas supportés.
L’extraction d’image vectorielle et de tableau à partir du document ne sont pas supportées non plus.
Certains PDF utilisent des glyphes spéciaux pour représenter ll ou ff ou fi, etc. La conversion ce ceux-ci
pourrait ne pas marcher simplement en fonction de comment ils sont représentés à l’intérieur du PDF.
Les liens et les Tables des Matières ne sont pas supportés.
Les PDF qui utilisent des polices non Unicode intégrées pour représenter des caractères qui ne font pas
partie du français engendreront une sortie tronquée pour ces caractères.
Certains PDF sont faits de photographies de page avec du texte reconnu par OCR derrière elles. Dans ces
cas-là, Calibre utilise le texte venant de l’OCR, qui peut être fort différent de ce que vous voyez dans le
fichier PDF.
Les PDF utilisés pour afficher du texte complexe, comme des langages lus de droite à gauche et les
compositions mathématiques ne se convertiront pas bien.

Pour répéter le PDF est un vraiment, vraiment mauvais format à utiliser comme source. Si vous devez
absolument utiliser du PDF, alors attendez-vous à trouver un fichier de sortie inutilisable, et très différent du
PDF source.

Il existe un certain nombre d’offres en ligne de conversion PDF > EPUB. Les résultats ne sont jamais très
concluants.
Des offres payantes existent bien sûr sous Windows qui pourraient être utilisées sous Ubuntu en se
servant de VirtualBox (Wine n’étant pas adapté à ces produits). J’en ai testé une : AbbyyFine Reader. La
conversion directe d’un PDF en EPUB est loin d’être parfaite et il vaut mieux créer un fichier HTML que
l’on retravaillera ensuite avec LibreOffice ou Sigil.

Au final, c’est la même démarche que celle que je vais exposer ici, mais en utilisant des logiciels libres et
gratuits.
Exposé de la méthode

Le schéma ci-dessous présente « l’organigramme » de la méthode que je propose.


Le scan

Sous Ubuntu, il existe un logiciel : gscan2pdf, qui est une interface graphique permettant de réaliser de la
Reconnaissance Optique de Caractères, avec le moteur tesseract.
Cependant, le résultat obtenu, tant au niveau du PDF produit que du texte n’est pas satisfaisant dans le
cas qui nous intéresse. Voici pourquoi :
1 — Les options de numérisation sont limitées. Notamment les recadrages, un peu compliqués...
2 — La sortie numérisée est un peu « curieuse ».
Copies d’écran :

Si on enregistre en mode texte, on obtient ceci :


Si on enregistre en mode hocr, on obtient ceci :

Ce qui est déjà mieux ! Malheureusement, ce mode n’est pas reconnu dans Calibre pour la conversion…
Il y a une astuce pour contourner ce problème : remplacer l’extension .hocr par .html.
Dans ce cas, on ouvre le fichier avec Calibre (il devient dénommé ZIP) et peut être converti en TXT.

C’est la raison pour laquelle je préconise plutôt l’utilisation de Simple Scan. Ici, j’utilise la
version 3.20.0.

Dans l’onglet « Préférences » vous pouvez choisir la résolution pour le texte et la résolution pour de la
photo (image).

Ci-dessus, les réglages que j’utilise pour ce tutoriel.


Voyons maintenant la différence et les deux types de numérisation possible : Texte — Photo.
Simple Scan lancé, aller sur « Document » > « Numériser » > choisir « Texte » ou « Photo ».
Texte va numériser en Noir et Blanc, Photo va numériser en couleur.
Voir capture d’écran ci-dessous :
On peut constater que l’image de gauche n’est pas de très bonne qualité. Cela est dû au fait que le livre
original est un très vieux livre, imprimé avant 1920, sur un papier bistre. Par contre l’image de droite est
parfaitement exploitable.
Comparaison avec un livre plus récent :

La différence saute aux yeux ! L’image de gauche est tout à fait exploitable.
Nous allons donc la recadrer :
Avantage du recadrage : Si nous continuons de scanner le même livre, positionné à l’identique, le
recadrage est automatique, tout en restant modifiable sur chaque page numérisée :

Une fois toutes les pages numérisées, on enregistre en PDF (« Enregistrer sous ») dans le dossier et avec
le nom que l’on veut. À noter que l’on peut également enregistrer en .jpg ou .png, ce qui produira un fichier
par page. Ceci peut être utile si le document comporte des images que l’on veut pouvoir récupérer et mettre
dans l’EPUB futur.
Exemple de .png obtenu :
Conseil : procéder par séries de 20/25 scans et enregistrer dans des fichiers indépendants. En cas de
« plantage » cela évite d’être obligé de tout recommencer…

Comme vous pouvez le voir sur les copies d’écran ci-dessus, j’ai numérisé deux pages à la fois. Pour
produire un PDF page par page qui nous servira de référence pour les corrections futures de l’OCR et la
mise en forme dans LibreOffice, il est pratique de procéder à un découpage.
C’est là qu’intervient un petit logiciel dont je n’ai pas encore parlé : Briss, téléchargeable ici :
https://sourceforge.net/projects/briss/files/
Ce projet vise à offrir une application multi-plate-forme simple pour recadrer des fichiers PDF.
L’interface très simple permet de placer un rectangle sur les parties que l’on veut recadrer. Distribué sous
licence GPL.

Copies d’écran ci-dessous :


1 — Fichier chargé :
2 — Recadrages ajustés :
Le fichier produit porte le même nom que l’original avec l’ajout suivant : nom du fichier_cropped.
Et comme on peut le constater, les pages ont bien été séparées en ayant supprimé l’ombre de gouttière :

Cette capture d’écran a été faite sur Okular, en choisissant le mode d’affichage « Aperçu »
Nous avons donc maintenant notre PDF.
L’OCR

Passons maintenant à la reconnaissance de caractère, car il ne s’agit, pour l’instant que d’images.

Ouvrir gImageReader

Cliquer sur « Ajouter des images » :

Se mettre sur reconnaître en français et sur hOCR, PDF :

Cliquer sur « Reconnaître Français (fr) » > « Plusieurs pages » :


Modifier ou Confirmer sur OK. Le processus démarre, une barre de progression, en bas de l’écran,
informe du déroulé de l’action. Quand c’est terminé, enregistrer la reconnaissance en cliquant comme ci-
dessous :

Cela va produire un fichier html.

Vous pouvez également produire un fichier PDF (icône à droite), mais attention : Ce fichier sera basé sur
l’OCR, et ne sera donc pas utilisable tel quel, l’OCR n’étant jamais parfait…

Voir copie d’écran :


Conversion du HTML en TXT

Ouvrir Calibre, et « Ajouter des livres » et importer le fichier .html précédemment produit.

Vous remarquerez, que le format de fichier est passé de .html à ZIP !


Cliquer sur « Convertir des livres » et choisir TXT comme format de sortie.
Cliquer ensuite sur « Chemin : Cliquer pour ouvrir »

Copier le fichier portant l’extension .txt dans un dossier de travail, ou ouvrez-le directement avec
LibreOffice.
Mise en forme dans LibreOffice

L’ouverture dans LibreOffice donnera ceci :

On peut observer que le « Style » est celui par défaut : « Texte préformaté ». On peut s’en contenter…
Mais pour avoir une sortie EPUB plus jolie, il vaut mieux modifier le style avant toute autre opération.
Sélectionner l’ensemble du texte (Ctrl+A) et appliquer le Style « Corps de Texte » ou « Style par
défaut », ou si vous avez déjà créé un style personnel, l’importer et l’utiliser.
Il y a une autre procédure utilisable si vous avez un modèle personnel préparé dans LibreOffice :
Ouvrez le fichier .txt avec gedit l’éditeur de texte d’Ubuntu, et faites un copier-coller dans votre modèle
LibreOffice en n’oubliant pas de mettre le curseur en style par défaut (Ctrl+0 si vous l’avez programmé de
cette façon). Ce qui dans mon cas donnera ceci :
Le texte est formaté selon les styles programmés : Retrait de la première ligne de paragraphe, alignement
justifié, etc.
Il n’y a plus qu’à faire les corrections : supprimer les sauts de lignes inutiles, faire les sauts de page aux
changements de chapitres, mise en place des notes de bas de page, et des illustrations s’il y en a, et
évidemment la correction orthographique…
C’est là que l’on retrouve l’utilité d’avoir deux écrans : sur l’un on affiche le travail sur LibreOffice, sur
l’autre le fichier PDF — celui qui a été recadré — ce qui permet de voir où se situent les corrections à faire.
Notez qu’il est très pratique d’avoir gardé les en-têtes et les numéros de page pour faciliter la navigation
dans le PDF…
Copie d’écran page suivante :
À comparer avec l’original, copie d’écran page suivante :
Vous remarquerez que le texte qui était réparti sur deux pages est maintenant sur une seule. La notion de
mise en page dans un EPUB est très différente de celle d’un livre ou d’un PDF. Les liseuses permettant de
modifier la taille d’affichage des caractères, il est évident que la mise en page est recalculée. Donc, il est
inutile d’essayer de faire une mise en page compliquée qui de toute façon ne correspondra pas à ce que verra
l’utilisateur final !
C’est pourquoi, dans l’exemple présenté ici, la mise en page dans LibreOffice a été faite en A4 et non pas
en A5 ou A6.
C’est pour la même raison que l’on ne met pas d’en-tête, ni de foliotage qui ne servent à rien dans un
EPUB.

Le petit dessin qui termine le chapitre a été copié avec shutter sur l’écran d’affichage du PDF.
On peut faire de même pour toutes les illustrations ou photos s’il y en a dans l’original. L’avantage de
cette méthode, c’est de produire une image « légère » et qui s’affichera bien sur les liseuses. Éventuellement,
on peut même les retoucher dans Gimp (contraste, luminosité, etc.) et les réduire en dimensions, sachant que
600 points de large en 200 DPI est suffisant pour les liseuses pour une photo pleine page.

Ceux qui ont investi dans Druide Antidote peuvent faire un contrôle orthographique et syntaxique
poussé, cela permet de relever bien des erreurs et je le conseille vivement.
Export en EPUB

Pour transformer le fichier LibreOffice en EPUB, deux possibilités :


1 — Utiliser le module prévu à cet effet dans LibreOffice.
2 — Ouvrir le fichier ODT dans Calibre et faire la conversion avec.

Ma préférence va nettement pour Calibre pour plusieurs raisons :


1 — On peut visualiser l’EPUB produit dans Calibre.
2 — On peut aussi l’éditer pour faire éventuellement des retouches (orthographe, etc.).
3 — On peut aussi produire d’autres formats pour liseuses : AZW3, Mobi (Kindle).
4 — On peut créer une couverture standard s’il n’y en a pas de prévue dans notre original ODT.
5 — On peut créer une table des matières s’il n’y en a pas dans l’original ODT.
En bref, le module de conversion de Calibre est facile à utiliser et bien documenté, d’où mon choix.

Un petit point sur lequel je dois attirer votre attention :


Cochez comme ci-dessous pour éviter les sauts de lignes entre les paragraphes qui rendent la lecture
difficile sur liseuse.

Voici le résultat en visionnant l’EPUB avec le module de Firefox :


Voici la visualisation sur ma liseuse… Kindle (donc, après transformation en MOBI) :
Ou succession de pages dans le module de visualisation de Calibre :

On remarquera les appels de notes :


Conclusion

J’espère avoir été assez clair dans mes explications et que cela vous aura aidé à transformer un livre
matériel en livre numérique.
La plus grande difficulté réside surtout dans la relecture et la correction du texte obtenu à partir de
l’OCR. Le moteur tesseract utilisé sous Linux est plutôt performant et il faut savoir que les logiciels
propriétaires fonctionnant sous Windows (et donc payants) ne font pas forcément mieux…
Alors, bon courage !

James

Vous aimerez peut-être aussi