DOCX nach Markdown in C# konvertieren
DocxToMarkdownConverter wandelt ein Word-Dokument in Markdown um: Eine Überschrift wird zu #, eine Tabelle zu einer Pipe-Tabelle. Bilder werden als data:-URIs eingebettet, sodass das Markdown für sich allein steht.
using DocToolkit;
byte[] docx = File.ReadAllBytes("input.docx");
string markdown = DocxToMarkdownConverter.Convert(docx);
File.WriteAllText("output.md", markdown);Was es braucht
- Keinen Browser, weder headless noch sonst.
- Keine Office-Installation und kein LibreOffice.
- Keine nativen Dateien: nur verwalteten Code.
- Kein Netzwerk zur Laufzeit, außer Sie verlangen es.
Gut zu wissen
- Synchron:
Convertnimmt die.docx-Datei alsbyte[]entgegen und gibt das Markdown alsstringzurück. - Das ist mit großem Abstand die verlustreichere Richtung: Word kann weit mehr ausdrücken als Markdown.
ConvertWithReportgibt dasselbe Markdown zurück und dazu eine Liste dessen, was verloren ging. Eine leere Liste bedeutet, dass nichts verloren ging, wovon der Konverter weiß.- Bilder werden als
data:-URIs eingebettet, nicht in Dateien neben der Ausgabe geschrieben.