Zum Inhalt springen
Convertube

Markdown-Dateien: reiner Text mit Konventionen – und davon gibt es mehr als eine

Was eine .md-Datei ist, warum sich keine zwei Renderer einig sind und wie Überschriften und Listen aus einer PDF entstehen, die nie welche hatte.

Auf einen Blick

Typ
Dokumente
Dateiendungen
.md, .markdown
MIME-Typ
text/markdown
Auch bekannt als
MD

Eine .md-Datei ist eine Textdatei. Es gibt keinen Container, keine Kompression und nichts Binäres darin – öffnen Sie eine im Editor, und Sie sehen genau, was sie enthält. Die Formatierung ist Konvention statt Auszeichnung: Ein # am Zeilenanfang bedeutet eine Überschrift, ein Bindestrich einen Listenpunkt, und ein Renderer, der die Konvention versteht, macht daraus HTML. Das ist die ganze Idee, und deshalb hat das Format jeden Rich-Text-Editor seiner Generation überlebt: Die Datei ist lesbar, bevor irgendetwas sie rendert, und sie wird noch lesbar sein, wenn das Programm, in dem Sie sie geschrieben haben, längst verschwunden ist.

Weiterlesen

Die Komplikation: Es gibt nicht das eine Markdown. Die ursprüngliche Implementierung von 2004 ließ sehr viele Fälle undefiniert, also hat jeder Renderer sie anders gelöst; CommonMark gibt es, um diese Mehrdeutigkeiten festzunageln, und GitHub Flavored Markdown baut Tabellen, Aufgabenlisten und Durchstreichen darauf auf. Die Lage ist sogar offiziell anerkannt: Als text/markdown im März 2016 in RFC 7763 als Medientyp registriert wurde, enthielt die Registrierung einen Parameter für die Variante – eben weil die Aussage, eine Datei sei Markdown, nicht sagt, welches Markdown. Diese Website gibt text/markdown mit UTF-8 aus und verwendet nur Konstrukte, über die sich alle Dialekte einig sind – Rauten-Überschriften, durch Leerzeilen getrennte Absätze, Bindestrich-Aufzählungen und horizontale Linien.

Eine PDF in Markdown umzuwandeln heißt, Struktur herzustellen, die die PDF nie hatte. Eine PDF hält Schriftgrößen fest, keine Überschriften, also werden die Größen auf der Seite geordnet, und die sechs größten werden zu den sechs Überschriftenebenen; eine Zeile, die bloß größer als der Fließtext ist, wird zur Überschrift, ob der Autor sie so gemeint hat oder nicht. Bei Listen ist es schlimmer: PDF kennt überhaupt kein Listenkonstrukt, und das Aufzählungszeichen, das Sie sehen, ist buchstäblich ein Zeichen im Text – eine Liste übersteht die Umwandlung also nur, wenn dieses Zeichen erkannt und als Bindestrich neu geschrieben wird. Nummerierte Punkte brauchen diese Hilfe nicht – „1. “ und „1) “ sind bereits Markdown und bereits als Liste gemeint.

Zwei Details sind wissenswert, weil sie den Text selbst verändern. Eine Zeile, die auf einen Bindestrich endet, wird als über den Zeilenumbruch getrenntes Wort behandelt und ohne ihn wieder zusammengefügt; und aufeinanderfolgende Zeilen auf Chinesisch oder Japanisch werden ohne Leerzeichen verbunden, weil diese Schriften keines setzen. Seiten werden durch eine horizontale Linie getrennt, ein dreizehnseitiges Dokument kommt also mit zwölf davon an. Ist die PDF ein Scan ohne Textebene, liest dasselbe Erkennungsmodell wie bei PDF in Word zuerst die Zeichen von den Seitenbildern ab, auf Ihrem eigenen Rechner.

Andere Formate in Markdown umwandeln

FAQ: Markdown

Ist eine .md-Datei einfach eine Textdatei?

Ja. Kein Container, keine Kompression, nichts Binäres. Jeder Texteditor öffnet sie, und die Markierungen – #, -, ** – sind gewöhnliche Zeichen, die Sie so lesen können, wie sie dastehen.

Welche Markdown-Variante bekomme ich?

Nur die Teile, über die sich alle Dialekte einig sind: Rauten-Überschriften, durch Leerzeilen getrennte Absätze, Bindestrich-Aufzählungen und horizontale Linien. Nichts hier hängt von einer Erweiterung von GitHub oder CommonMark ab, es wird also überall gleich dargestellt, wo Sie es einfügen.

Warum ziehen sich Linien aus Strichen durch mein Dokument?

Das sind Seitenumbrüche. Jede ist eine horizontale Linie, die markiert, wo eine PDF-Seite endete und die nächste begann – ein dreizehnseitiges Dokument kommt also mit zwölf davon zurück.

Eine Überschrift hat die falsche Ebene bekommen. Warum?

Die Ebenen werden nach Schriftgröße geordnet, weil eine PDF Größen speichert und keine Überschriften. Nutzt ein Dokument die Größe zur Hervorhebung statt zur Gliederung – ein herausgestelltes Zitat, eine große erste Zeile –, folgt die Rangfolge der Größe und trifft die Ebene falsch.

Überstehen Tabellen die Umwandlung?

Mit Linien gezeichnete Tabellen ja – sie werden zu Markdown-Tabellen, die erste Zeile zur Kopfzeile. Tabellen auf einer gescannten Seite kommen als gewöhnliche Zeilen heraus, weil ein Scan keine Linien zum Auslesen hat. Geht es beim Umwandeln nur um die Tabellen, legt PDF in Excel jede davon in Zeilen und Spalten ab, mit denen man arbeiten kann.

Funktioniert das mit gescannten PDFs?

Ja. Gibt es keine Textebene, läuft in Ihrem Browser ein KI-Erkennungsmodell, das die Zeichen von den Seitenbildern abliest. Überschriften werden dann nach gemessener Zeilenhöhe statt nach Schriftgröße geordnet, und nichts wird hochgeladen.