HTML nach DOCX in C# konvertieren

HtmlToDocxConverter erstellt aus HTML ein Word-Dokument im Format A4, sofern Sie keine andere Seitengröße wählen. Nichts, worauf das Markup verweist, wird abgerufen, daher ist es auf einem Server ohne Netzwerk sicher.

using DocToolkit;

string html = "<h1>Invoice 2026-114</h1><p>Due on receipt</p>";
byte[] docx = await HtmlToDocxConverter.ConvertAsync(html);
File.WriteAllBytes("output.docx", docx);

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

  • Asynchron: ConvertAsync nimmt das HTML als string entgegen und gibt einen Task<byte[]> zurück.
  • Standardmäßig A4 mit Rändern von einem Zoll; übergeben Sie ein PageSetup wie PageSetup.Letter für eine andere Größe.
  • Remote-Bilder sind standardmäßig aus, und nur data:-Bilder werden eingebettet. RemoteImageOptions schaltet sie pro Aufruf ein, mit einer optionalen Allow-List für Hosts.
  • Ein <link rel="stylesheet"> wird nie abgerufen; Inline-<style>-Blöcke und style-Attribute werden berücksichtigt.

Installation

dotnet add package Ank.DocToolkit

NuGetDokumentationGitHub