De Markdown à PDF et retour : ce que la conversion de format préserve
Markdown↔PDF conserve mieux titres, listes et tableaux simples que les pixels. Polices exactes, pagination et mise en page ne survivent pas au retour.

Markdown et le PDF répondent à des contrats différents. Markdown est une structure adaptée au contrôle de version ; le PDF, une description de page figée. Convertir dans un sens puis dans l’autre est utile, mais ce n’est pas un cycle d’archivage sans perte.
Markdown vers PDF : la structure devient des pages
Markdown vers PDF (POST /api/v1/convert/markdown/pdf) accepte un fichier .md ou un ZIP contenant du Markdown. Tout autre fichier est refusé. L’UTF-8 est requis pour une entrée .md brute. La chaîne rend le Markdown en HTML avec tableaux, texte barré et listes de tâches, l’enveloppe dans une feuille de style d’impression (piles de polices multi-scripts, sens droite-à-gauche si l’arabe est détecté), puis imprime en PDF via WeasyPrint.
Ce qui survit en général :
- Titres, paragraphes, listes et tableaux Markdown simples ;
- Texte multi-scripts que le chemin HTML sait composer (CJK, latin, autres écritures gérées par la feuille de style) ;
- Un PDF imprimable et partageable pour les flux docs-as-code.
Ce qui ne survit pas :
- les polices du thème de votre éditeur garanties dans tous les lecteurs ;
- les coupures de ligne du fichier
.mdà l’écran ; - les fonctions Markdown interactives sans équivalent en PDF (cases à cocher dynamiques, sections repliables, liens wiki).
Une entrée ZIP sert à regrouper du Markdown avec des ressources que le chemin HTML sait résoudre à côté du document : une commodité d’empaquetage, non la garantie que chaque image relative ou référence CSS aura le même aspect partout.
PDF vers Markdown : la couche de texte entre, le Markdown sort
PDF vers Markdown (POST /api/v1/convert/pdf/markdown) extrait le contenu textuel en Markdown via pdf-inspector. La réponse est text/markdown, téléchargée sous forme de fichier .md. Les PDF nés numériques à couche de texte propre se convertissent le mieux. Les pages scannées sans couche de texte ne donnent qu’un Markdown vide ou inutilisable tant que vous n’avez pas lancé d’OCR ; or l’OCR de ce site renvoie lui aussi du Markdown, pas une couche intégrée à un PDF interrogeable.
Attendez-vous à :
- des titres et paragraphes quand les heuristiques de taille de police fonctionnent (à vous peut-être de renuméroter les niveaux
#à la main) ; - des tableaux Markdown lorsque la reconnaissance fonctionne ; les mises en page multicolonnes peuvent se linéariser dans un autre ordre de lecture ;
- des en-têtes et pieds de page répétés à chaque page (à nettoyer ensuite) ;
- des images et des équations restant des images, sans devenir des ressources locales ni du LaTeX.
Pour du texte brut sans heuristiques de titres, PDF vers texte donne une extraction plus plate. Un export de tableau qui renvoie HTTP 204 signifie qu’aucun bloc en colonnes n’a été détecté ; voir Export de tableau vide (204).
Ce qu’un aller-retour prouve réellement
| Survit raisonnablement | Ne survit généralement pas |
|---|---|
| Les mots, la hiérarchie des titres, les listes | Une géométrie au pixel près |
| Les tableaux simples en texte | Les polices et le crénage exacts |
| Un brouillon exploitable pour Git ou un agent | Une pagination identique à l’impression |
Un double aller-retour dérive : Markdown→PDF se réorganise via WeasyPrint, PDF→Markdown reconstruit la structure par heuristiques. Aucune étape ne conserve un intermédiaire sans perte du modèle de mise en page de l’autre format.
Choisir une direction de référence
Si la mise en page d’impression fait référence, gardez le PDF et traitez le Markdown comme un export ou un flux pour agents. Si vous avez besoin de différences, de revue de code et d’ingestion par un agent, privilégiez le Markdown et voyez le PDF comme l’étape de publication. Ne gardez pas les deux comme « sources de vérité » équivalentes en espérant qu’ils restent identiques après modification.
Une boucle docs-as-code pratique : modifier le Markdown dans Git → Markdown vers PDF pour l’artefact partageable → éviter PDF→Markdown→PDF au quotidien. Recourez à PDF→Markdown pour un PDF né numérique hérité dont un agent a besoin : ce Markdown est un nouveau brouillon, pas la garantie de la pagination d’origine.
Les fichiers chiffrés exigent un Déverrouiller autorisé avant l’une ou l’autre conversion. Les fichiers endommagés qui ne s’analysent pas doivent d’abord passer par Get Info / Réparer. Pour les mêmes points de terminaison en HTTP, voir Développeurs.