Ce que fait ce convertisseur
Un PDF est conçu pour l’impression. Il enregistre où se place chaque morceau de texte sur la page et dans quelle taille de police, mais il n’enregistre ni les paragraphes, ni les titres, ni les listes. Copier le texte d’un PDF donne souvent des lignes cassées, des numéros de page au milieu des phrases et aucune structure.
Cet outil pour convertir un PDF en Markdown lit le texte avec PDF.js et reconstruit la structure à partir de la mise en page :
- Les morceaux de texte d’une même ligne sont réunis, avec des espaces ajoutées là où il y a un écart visible.
- Les lignes proches les unes des autres forment un paragraphe. Un écart vertical plus grand en commence un nouveau.
- Un texte nettement plus grand que le texte courant devient un titre. La plus grande taille devient
#, la suivante##, et ainsi de suite. - Les lignes qui commencent par un caractère de puce, comme un point rond, deviennent des éléments de liste Markdown.
- Les lignes qui ne contiennent qu’un numéro de page en haut ou en bas d’une page sont retirées.
Mode d’emploi
- Appuyez sur Choisir un PDF ou déposez un fichier
.pdfsur la zone. - Patientez pendant la lecture des pages. La ligne d’état indique la progression pour les longs fichiers.
- Réglez les options. Le résultat se met à jour aussitôt, sans relire le fichier :
- Détecter les titres transforme le grand texte en titres Markdown.
- Retirer les numéros de page supprime les numéros de page isolés.
- Marquer les sauts de page place une ligne
---entre les pages. - Sortie passe de Markdown à Texte brut.
- Vérifiez le résultat. Aperçu l’affiche rendu, et vous pouvez modifier le Markdown dans la zone.
- Appuyez sur Copier ou Télécharger.
Exemple
Nous avons créé un PDF de test de deux pages. La page un a un titre de 22 points, des intertitres de 15 points, deux paragraphes de 11 points, deux lignes à puces et un numéro de page en bas. La page deux a un titre, une phrase et un numéro de page. Le convertisseur a renvoyé :
# Quarterly Report
## Overview
Revenue rose in all three regions this quarter. The largest gain came from online orders.
Costs stayed close to the plan.
## Next steps
- Hire two support staff
- Open the Leeds office
## Appendix
All figures are unaudited.
Le premier paragraphe faisait deux lignes dans le PDF. Elles ont été réunies, car l’écart entre elles était un interligne normal. « Costs stayed close to the plan. » commence un nouveau paragraphe, car l’écart au-dessus était plus grand. Les deux numéros de page ont été retirés. Avec Sortie réglée sur Texte brut, les titres perdent leurs # et les puces gardent leurs points d’origine.
Ce qui marche bien, et moins bien
Le résultat dépend de la façon dont le PDF a été créé.
Fonctionne bien : les PDF exportés depuis Word, Google Docs, LibreOffice, Pages ou un navigateur web. Ils contiennent du vrai texte dans l’ordre de lecture, avec des tailles de police nettes pour les titres. Les accents et les caractères français sont lus normalement dans ces fichiers.
À vérifier :
- Les mises en page sur plusieurs colonnes. Le texte est pris dans l’ordre où le PDF le dessine. Dans certains documents à deux colonnes, c’est colonne par colonne, ce qui est juste. Dans d’autres, des lignes des deux colonnes peuvent s’entremêler.
- Les titres de même taille que le texte courant. Un titre seulement en gras, pas plus grand, n’est pas détecté, car le gras n’est pas marqué de façon fiable dans les données texte d’un PDF.
- Les tableaux. Le texte d’un tableau ressort en lignes ou en courts paragraphes. Reconstruisez le tableau avec le générateur de tableau Markdown.
- Les notes, en-têtes et pieds de page. Les en-têtes courants répétés apparaissent sur chaque page. Supprimez-les après la conversion.
- Les mots coupés en fin de ligne sont recollés sans espace : « porte- » suivi de « monnaie » devient « porte-monnaie ». Un mot coupé seulement pour tenir dans la ligne garde aussi son trait d’union, comme « infor-mation » : cherchez les traits d’union parasites, fréquents dans les PDF français justifiés.
Ne fonctionne pas :
- Les PDF scannés. Ce sont des images. L’outil vous prévient quand il trouve très peu de texte. Il leur faut d’abord un OCR, par exemple avec notre outil pour convertir une image en texte page par page.
- Les images, graphiques et champs de formulaire. Ils sont ignorés.
Le texte des PDF en chinois, japonais et coréen est pris en charge. Les tables de caractères dont PDF.js a besoin sont incluses dans ce site et ne se chargent que lorsqu’un fichier les utilise.
Conseils
- Si vous avez encore le document source, convertissez-le plutôt. Le convertisseur Word en Markdown garde les tableaux, les liens et les niveaux de titres exacts.
- Passez le résultat dans le formateur Markdown pour couper ou recoller les paragraphes dans un seul style.
- Pour une page web enregistrée en PDF, le HTML d’origine donne souvent un résultat plus propre dans le convertisseur HTML en Markdown.
Autres façons de convertir un PDF en Markdown
- pdftotext, des outils Poppler, extrait le texte brut en ligne de commande. Son option
-layoutgarde la mise en page avec des espaces. - Python : des bibliothèques comme pdfplumber et PyMuPDF donnent le texte avec ses positions, pour écrire vos propres règles de titres et de tableaux.
- Pandoc ne lit pas les fichiers PDF, il ne peut donc pas faire cette conversion directement.
Les gros PDF de plusieurs centaines de pages fonctionnent, mais prennent plus de temps puisque chaque page est lue sur votre appareil. Les fichiers de plus de 100 Mo sont refusés pour garder le navigateur réactif.