Test in einer Live-Umgebung
Test in der Produktion ohne Wasserzeichen.
Funktioniert überall, wo Sie es brauchen.
Microsoft Word-Dokumente werden häufig für verschiedene Zwecke verwendet, von formellen Geschäftsberichten bis hin zu persönlichen Briefen. In C# müssen Entwickler häufig Microsoft Word-Dokumente programmatisch erzeugen. Windows-Anwendungsentwickler haben traditionell die Microsoft Office Interop verwendet, um Word-Dokumente mit C# zu generieren und zu erstellen.
Dieser Ansatz ist jedoch nicht für jeden zugänglich, und es gibt Entwickler, die ein Betriebssystem oder einen Linux-Rechner verwenden, auf dem die Microsoft Office-Schnittstelle nicht verfügbar ist. In diesen Fällen müssen die Entwickler andere Bibliotheken erkunden, die unabhängig voneinander auf verschiedenen Plattformen arbeiten können. Eine solche leistungsfähige Bibliothek für die programmatische Arbeit mit Word-Dateien ist IronWord, von Iron Software.
IronWord bietet robuste Funktionen für die Arbeit mit Word-Dokumenten in .NET-Anwendungen und kann auf verschiedenen Plattformen und Docker-Images/Containern auf Linux-Basis ausgeführt werden. Mit IronWord, das über eine intuitive C#-, VB.NET-Word- und Docx-Dokumenten-API verfügt, ist es nicht erforderlich, Microsoft Office, Office-Automatisierung oder Word Interop zu installieren, um Word-Dokumente zu erstellen, zu bearbeiten und zu exportieren. IronWord unterstützt vollständig .NET 8, 7, 6, Framework, Core und Azure.
Dieser Artikel befasst sich mit der Erstellung von Word-Dokumenten in C# unter Verwendung der IronWord-Bibliothek.
Erstellen Sie ein neues C#-Projekt.
Installieren Sie die IronWord bibliothek.
Erstellen Sie ein Word-Dokument unter Verwendung der IronWord-Bibliothek.
Fügen Sie dem nun vorhandenen Dokument Inhalt hinzu.
Speichern Sie das erstellte Word-Dokument.
Öffnen Sie das erstellte Word-Dokument und zeigen Sie es an.
Voraussetzungen:
Visual Studio: Stellen Sie sicher, dass Sie Visual Studio oder eine andere C#-Entwicklungsumgebung installiert haben.
Erstellen Sie eine neue C#-Konsolenanwendung oder verwenden Sie ein vorhandenes Projekt, in dem Sie das Word-Dokument generieren möchten.
Wählen Sie die Konsolenanwendungsvorlage aus und klicken Sie auf Weiter.
Im nächsten Schritt können Sie den Namen der Lösung und des Projekts angeben.
Wählen Sie die .NET Version und klicken Sie auf "Erstellen".
Öffnen Sie Ihr C#-Projekt und installieren Sie die IronWord bibliothek über die NuGet-Paketmanager-Konsole:
Install-Package IronWord -Version 2024.1.2
Das NuGet-Paket kann auch mit dem Visual Studio Package Manager installiert werden, wie unten gezeigt.
Beginnen wir mit dem einfachen Beispiel der Erstellung eines Word-Dokuments unter Verwendung der IronWord-Bibliothek. Der folgende Code veranschaulicht, wie man ein Word-Dokument mit einem einzigen Absatz erstellt, der den Text "Hello, World" enthält!"
using IronWord;
using IronWord.Models;
// Create textrun instance
TextRun textRun = new TextRun("Hello, World!");
Paragraph paragraph = new Paragraph();
paragraph.AddTextRun(textRun);
// Create a new Word document object
WordDocument doc = new WordDocument(paragraph);
// Export docx
doc.SaveAs("example.docx"); // save docx file to disk
using IronWord;
using IronWord.Models;
// Create textrun instance
TextRun textRun = new TextRun("Hello, World!");
Paragraph paragraph = new Paragraph();
paragraph.AddTextRun(textRun);
// Create a new Word document object
WordDocument doc = new WordDocument(paragraph);
// Export docx
doc.SaveAs("example.docx"); // save docx file to disk
Imports IronWord
Imports IronWord.Models
' Create textrun instance
Private textRun As New TextRun("Hello, World!")
Private paragraph As New Paragraph()
paragraph.AddTextRun(textRun)
' Create a new Word document object
Dim doc As New WordDocument(paragraph)
' Export docx
doc.SaveAs("example.docx") ' save docx file to disk
Nach der Ausführung des obigen Codebeispiels wird die neue Dokumentendatei example.docx erstellt, und die Ausgabe ist wie unten dargestellt.
Dies ist ein grundlegendes Beispiel für die Erstellung einer Word-Dokumentendatei mit IronWord. Weitere Informationen können Sie den folgenden Dokumenten entnehmen *hier.
Nachdem wir nun wissen, wie man mit IronWord ein einfaches Word-Dokument erstellt, wollen wir nun Absätze und formatierten Text hinzufügen.
TextRun kann auch Stildaten übernehmen, um die visuelle Darstellung des Textes zu verbessern. Text kann mit Stilen wie Durchgestrichen, Fett, Kursiv und Unterstrichen versehen werden.
Ändern Sie das Programm, das Sie zuvor erstellt haben, und fügen Sie den folgenden Code hinzu.
using IronWord;
using IronWord.Models;
// Create textrun
TextRun textRun = new TextRun("Hello, World!"); // add string
Paragraph paragraph = new Paragraph();
paragraph.AddTextRun(textRun);
// Configure text
TextRun introText = new TextRun("This is an example paragraph with italic and bold styling."); // add string or text
TextStyle italicStyle = new TextStyle()
{
IsItalic = true
};
TextRun italicText = new TextRun("Italic example sentence.", italicStyle);
// add italic string
TextStyle boldStyle = new TextStyle()
{
IsBold = true
};
TextRun boldText = new TextRun("Bold example sentence.", boldStyle);
// add bold string
// Add text
paragraph.AddTextRun(introText);
paragraph.AddTextRun(italicText);
paragraph.AddTextRun(boldText);
// Create a new Word document
WordDocument doc = new WordDocument(paragraph);
// Export docx document
doc.SaveAs("example.docx");// docx file save in EXE location
using IronWord;
using IronWord.Models;
// Create textrun
TextRun textRun = new TextRun("Hello, World!"); // add string
Paragraph paragraph = new Paragraph();
paragraph.AddTextRun(textRun);
// Configure text
TextRun introText = new TextRun("This is an example paragraph with italic and bold styling."); // add string or text
TextStyle italicStyle = new TextStyle()
{
IsItalic = true
};
TextRun italicText = new TextRun("Italic example sentence.", italicStyle);
// add italic string
TextStyle boldStyle = new TextStyle()
{
IsBold = true
};
TextRun boldText = new TextRun("Bold example sentence.", boldStyle);
// add bold string
// Add text
paragraph.AddTextRun(introText);
paragraph.AddTextRun(italicText);
paragraph.AddTextRun(boldText);
// Create a new Word document
WordDocument doc = new WordDocument(paragraph);
// Export docx document
doc.SaveAs("example.docx");// docx file save in EXE location
Imports IronWord
Imports IronWord.Models
' Create textrun
Private textRun As New TextRun("Hello, World!") ' add string
Private paragraph As New Paragraph()
paragraph.AddTextRun(textRun)
' Configure text
Dim introText As New TextRun("This is an example paragraph with italic and bold styling.") ' add string or text
Dim italicStyle As New TextStyle() With {.IsItalic = True}
Dim italicText As New TextRun("Italic example sentence.", italicStyle)
' add italic string
Dim boldStyle As New TextStyle() With {.IsBold = True}
Dim boldText As New TextRun("Bold example sentence.", boldStyle)
' add bold string
' Add text
paragraph.AddTextRun(introText)
paragraph.AddTextRun(italicText)
paragraph.AddTextRun(boldText)
' Create a new Word document
Dim doc As New WordDocument(paragraph)
' Export docx document
doc.SaveAs("example.docx") ' docx file save in EXE location
Zur übersichtlichen Darstellung der Daten können diese auch in einem Raster dargestellt werden. Wenn Daten in einem Gitter angeordnet sind, spricht man von einer Tabelle. Mit IronWord können wir Tabellen und Bilder in das Word-Dokument einfügen (siehe unten):
using IronWord;
using IronWord.Models;
// Create table cell
TableCell cell = new TableCell();
TextRun textRun = new TextRun();
textRun.Text = "Sample text";
// Add textrun to the cell
cell.AddContent(new Paragraph(textRun));
// Configure border style
BorderStyle borderStyle = new BorderStyle();
borderStyle.BorderColor = new IronColor(IronSoftware.Drawing.Color.Black);
borderStyle.BorderValue = IronWord.Models.Enums.BorderValues.Thick;
borderStyle.BorderSize = 5;
// Configure table border
TableBorders tableBorders = new TableBorders() {
TopBorder = borderStyle,
RightBorder = borderStyle,
BottomBorder = borderStyle,
LeftBorder = borderStyle,
};
cell.Borders = tableBorders;
// Create row and add cell
TableRow row = new TableRow();
row.AddCell(cell); // add cell
row.AddCell(cell); // add cell
// Create table and add row
Table table = new Table();
table.AddRow(row);
// Generate document from the table
WordDocument doc = new WordDocument(table);
// Export Word document
doc.SaveAs("Document.docx"); // docx file save in EXE location
using IronWord;
using IronWord.Models;
// Create table cell
TableCell cell = new TableCell();
TextRun textRun = new TextRun();
textRun.Text = "Sample text";
// Add textrun to the cell
cell.AddContent(new Paragraph(textRun));
// Configure border style
BorderStyle borderStyle = new BorderStyle();
borderStyle.BorderColor = new IronColor(IronSoftware.Drawing.Color.Black);
borderStyle.BorderValue = IronWord.Models.Enums.BorderValues.Thick;
borderStyle.BorderSize = 5;
// Configure table border
TableBorders tableBorders = new TableBorders() {
TopBorder = borderStyle,
RightBorder = borderStyle,
BottomBorder = borderStyle,
LeftBorder = borderStyle,
};
cell.Borders = tableBorders;
// Create row and add cell
TableRow row = new TableRow();
row.AddCell(cell); // add cell
row.AddCell(cell); // add cell
// Create table and add row
Table table = new Table();
table.AddRow(row);
// Generate document from the table
WordDocument doc = new WordDocument(table);
// Export Word document
doc.SaveAs("Document.docx"); // docx file save in EXE location
Imports IronWord
Imports IronWord.Models
' Create table cell
Private cell As New TableCell()
Private textRun As New TextRun()
textRun.Text = "Sample text"
' Add textrun to the cell
cell.AddContent(New Paragraph(textRun))
' Configure border style
Dim borderStyle As New BorderStyle()
borderStyle.BorderColor = New IronColor(IronSoftware.Drawing.Color.Black)
borderStyle.BorderValue = IronWord.Models.Enums.BorderValues.Thick
borderStyle.BorderSize = 5
' Configure table border
Dim tableBorders As New TableBorders() With {
.TopBorder = borderStyle,
.RightBorder = borderStyle,
.BottomBorder = borderStyle,
.LeftBorder = borderStyle
}
cell.Borders = tableBorders
' Create row and add cell
Dim row As New TableRow()
row.AddCell(cell) ' add cell
row.AddCell(cell) ' add cell
' Create table and add row
Dim table As New Table()
table.AddRow(row)
' Generate document from the table
Dim doc As New WordDocument(table)
' Export Word document
doc.SaveAs("Document.docx") ' docx file save in EXE location
Im obigen Beispiel haben wir einem Word-Dokument eine Tabelle mit Rahmen hinzugefügt.
Bilder verbessern die Präsentation des Dokuments und können mehr Farben und visuellen Reiz hinzufügen.
Bilder können mit IronWord programmatisch in ein Word-Dokument eingefügt werden, wie der folgende Code zeigt:
using IronWord;
using IronWord.Models;
// Load new document
WordDocument doc = new WordDocument();
// Configure image
IronWord.Models.Image image = new IronWord.Models.Image("SalesChart.jpg");
image.Width = 200; // In unit pixel (px)
image.Height = 200; // In unit pixel (px)
Paragraph paragraph = new Paragraph();
// Add image
paragraph.AddImage(image);
// Add paragraph
doc.AddParagraph(paragraph);
// Export docx
doc.SaveAs("save_document.docx"); // docx file
using IronWord;
using IronWord.Models;
// Load new document
WordDocument doc = new WordDocument();
// Configure image
IronWord.Models.Image image = new IronWord.Models.Image("SalesChart.jpg");
image.Width = 200; // In unit pixel (px)
image.Height = 200; // In unit pixel (px)
Paragraph paragraph = new Paragraph();
// Add image
paragraph.AddImage(image);
// Add paragraph
doc.AddParagraph(paragraph);
// Export docx
doc.SaveAs("save_document.docx"); // docx file
Imports IronWord
Imports IronWord.Models
' Load new document
Private doc As New WordDocument()
' Configure image
Private image As New IronWord.Models.Image("SalesChart.jpg")
image.Width = 200 ' In unit pixel (px)
image.Height = 200 ' In unit pixel (px)
Dim paragraph As New Paragraph()
' Add image
paragraph.AddImage(image)
' Add paragraph
doc.AddParagraph(paragraph)
' Export docx
doc.SaveAs("save_document.docx") ' docx file
Hier fügen wir ein Bild mit IronWord.Models.Image mit einer Höhe und Breite von 200 Pixeln zu einem Absatz hinzu.
IronWord erfordert eine Lizenz zur Nutzung. Ein Testschlüssel kann von der Iron Software-Website bezogen werden hier. Dieser Schlüssel muss in appsettings.json platziert werden.
{
"IronWord.LicenseKey":"IRONWORD.MYLICENSE.KEY.TRIAL"
}
{
"IronWord.LicenseKey":"IRONWORD.MYLICENSE.KEY.TRIAL"
}
If True Then
"IronWord.LicenseKey":"IRONWORD.MYLICENSE.KEY.TRIAL"
End If
Geben Sie Ihre E-Mail-Adresse an, um eine Testlizenz zu erhalten. Nachdem Sie Ihre E-Mail-ID angegeben haben, wird der Schlüssel per E-Mail zugestellt.
Erstellen von Word-Dokumenten in C# unter Verwendung des IronWord bibliothek bietet eine flexible und effiziente Möglichkeit, Dokumente zu erstellen, ohne auf Microsoft Office angewiesen zu sein. Egal, ob Sie einfache Briefe oder komplexe Berichte mit Tabellen und Bildern erstellen müssen, IronWord ermöglicht es Ihnen, dies programmgesteuert zu tun. Dieser Artikel enthält eine umfassende Anleitung zum Erstellen von Word-Dokumenten. Mit IronWord können Sie die Erstellung von Word-Dokumenten automatisieren und so Ihre C#-Anwendungen vielseitiger und produktiver gestalten.
Und für Entwickler, die nach einer Möglichkeit suchen, PDF-Dateien in Verbindung mit ihren generierten Word-Dokumenten zu bearbeiten, gibt es mit IronPDF eine weitere C#-Bibliothek von Iron Software. Zum Überprüfen klicken Sie auf *hier.
9 .NET API-Produkte für Ihre Bürodokumente