Konvertieren Sie HTML mit C# in ein Word-Dokument

HTML (HyperText Markup Language) ist ein führendes Dateiformat für Webseiten, das von allen Browsern unterstützt wird. In verschiedenen Fällen müssen wir möglicherweise HTML-Dateien oder Inhalte von Live-Webseiten in Word-Dokumente konvertieren (DOC, DOCX, DOT, DOTM, DOCM ). Es hilft, den Text von HTML-Webseiten zu bearbeiten oder die Textformatierung anzuwenden. In diesem Artikel erfahren Sie, wie Sie HTML mit C# in ein Word-Dokument konvertieren.

Folgende Themen sollen in diesem Artikel behandelt werden:

C#-API zum Konvertieren von HTML in DOCX – kostenloser Download

Zum Konvertieren von HTML-Dateien oder Webseiten in Textverarbeitungsdateiformate verwenden wir die API Aspose.Words for .NET. Es ist eine Komplettlösung zum programmgesteuerten Erstellen, Bearbeiten, Konvertieren oder Analysieren von Word-Dokumenten. Bitte downloaden Sie die DLL der API oder installieren Sie sie mit NuGet.

Install-Package Aspose.Words

Konvertieren Sie HTML in Word in C#

Wir können HTML-Dateien einfach programmgesteuert in Word-Dokumente konvertieren, indem wir die folgenden Schritte ausführen:

  1. Laden Sie eine HTML-Datei mit der Klasse Document.
  2. Rufen Sie die Methode Document.Save(string, SaveFormat) auf, um die HTML-Datei als „output.docx“ zu speichern.

Die Enumeration SaveFormat in der Methode Document.Save() gibt das Format an, in das Sie die HTML-Datei konvertieren möchten. Das folgende Codebeispiel zeigt, wie Sie eine HTML-Datei mit C# in DOCX konvertieren.

// Dieses Codebeispiel zeigt, wie Sie eine HTML-Datei mit C# in ein Word-Dokument konvertieren.
// Laden Sie die HTML-Datei mit der Document-Klasse
Document document = new Document(@"C:\Files\sample.html");

// Konvertieren Sie die HTML-Datei in das Word-DOCX-Format
document.Save(@"C:\Files\output.docx", SaveFormat.Docx);

Konvertieren Sie eine Webseite von einer URL in C# in Word

Wir können eine HTML-Webseite auch direkt von einer Live-URL in ein Word-Dokument konvertieren, indem wir die folgenden Schritte ausführen:

  1. Laden Sie zunächst den Webseiteninhalt als System.Byte-Array von der angegebenen URL herunter.
  2. Als nächstes initiieren Sie das MemoryStream-Objekt mit einem Array-Objekt als Argument.
  3. Erstellen Sie dann eine Instanz der Klasse HtmlLoadOptions.
  4. Erstellen Sie danach eine Instanz der Document-Klasse und initialisieren Sie sie mit MemoryStream- und HtmlLoadOptions-Objekten.
  5. Rufen Sie schließlich die Methode Document.Save(string, SaveFormat) auf, um die HTML-Datei als „output.docx“ zu speichern.

Das folgende Codebeispiel zeigt, wie Sie eine HTML-Webseite mit C# in DOCX konvertieren.

// Dieses Codebeispiel zeigt, wie Sie eine HTML-Webseite mithilfe von C# direkt von einer Live-URL in einem Word-Dokument speichern.
// Die URL
string Url = "https://en.wikipedia.org/wiki/Aspose.Words";

// Definieren Sie HTML-Ladeoptionen 
HtmlLoadOptions options = new HtmlLoadOptions();

byte[] imageData = null;

// Laden Sie den Inhalt von der URL als Byte-Array herunter
using (var wc = new System.Net.WebClient())
    imageData = wc.DownloadData(Url);

// Byte-Array in Stream umwandeln
var urlStream =  new MemoryStream(imageData);

// Erstellen Sie eine Instanz des Document-Objekts
Document document = new Document(urlStream, options);

// Als DOCX speichern
document.Save(@"C:\Files\output_url.docx", SaveFormat.Docx);

Konvertieren Sie einen HTML-String mit C# in Word

Wir können ein Word-Dokument dynamisch aus einer HTML-Zeichenfolge generieren, indem wir die folgenden Schritte ausführen:

  1. Erstellen Sie zunächst eine Instanz der Klasse Dokument.
  2. Erstellen Sie als Nächstes eine Instanz der Klasse DocumentBuilder mit dem Document-Objekt.
  3. Fügen Sie dann mithilfe der Methode DocumentBuilder.InsertHtml(string) HTML in das Dokument ein.
  4. Speichern Sie abschließend das Word-Dokument mit der Methode Document.Save(string, SaveFormat).

Das folgende Codebeispiel zeigt, wie Sie eine HTML-Zeichenfolge mit C# in DOCX konvertieren.

// Dieses Codebeispiel zeigt, wie Sie mit C# ein Word-Dokument aus einer HTML-Zeichenfolge generieren.
// Erstellen Sie ein neues Dokument
Document document = new Document();

// Erstellen Sie einen Dokumentenersteller
DocumentBuilder builder = new DocumentBuilder(document);

// HTML einfügen
builder.InsertHtml("<ul>\r\n" +
    "<li>Item1</li>\r\n" +
    "<li>Item2</li>\r\n" +
    "</ul>");

// Als DOCX speichern
document.Save(@"C:\Files\html-string-as-word.docx", SaveFormat.Docx);

Holen Sie sich eine kostenlose Lizenz

Bitte testen Sie die API ohne Evaluierungseinschränkungen, indem Sie eine kostenlose temporäre Lizenz anfordern.

Fazit

In diesem Artikel haben wir gelernt, wie man HTML mit C# in ein Word-Dokument konvertiert. Wir haben auch gesehen, wie man Live-Webseiten programmgesteuert von einer URL in Word-Dateien konvertiert. Außerdem können Sie mithilfe der Dokumentation mehr über Aspose.Words für die .NET-API erfahren. Bei Unklarheiten können Sie uns gerne im Forum kontaktieren.

Siehe auch