在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
Microsoft Word 文件因其多功能性而被廣泛使用,從正式的商業報告到個人信件皆可應用。 在 C# 中,開發人員經常需要以程式化的方式生成 Microsoft Word 文件。 Windows 應用程式開發人員傳統上使用 Microsoft Office Interop 來使用 C# 生成和建立 Word 文件。
然而,這種方法並非每個人都能使用,開發者可能使用的是某些操作系統或 Linux 機器,而這些環境中無法使用 Microsoft Office 界面。 在這些情況下,開發人員必須探索可以在不同平台上獨立運作的其他庫。 一個用於以程式方式處理 Word 文件的強大程式庫是IronWord, 來自Iron Software.
IronWord 提供強大的功能,能夠在 .NET 應用中處理 Word 文件,並且可以在不同平台和基於 Linux 的 Docker 映像/容器上運行。 使用 IronWord,具備直覺的 C#、VB.NET Word 和 Docx Document API,無需安裝 Microsoft Office、Office 自動化或 Word Interop,即可建立、編輯和匯出 Word 文件檔案。 IronWord 完全支援 .NET 8、7、6、Framework、Core 和 Azure。
本文將探討使用IronWord庫在C#中創建Word文檔。
創建一個新的 C# 專案。
安裝這個IronWord圖書館
使用IronWord庫創建Word文件。
在現有文件中添加內容。
儲存已建立的 Word 文件。
開啟並顯示所創建的 Word 文件。
先決條件:
Visual Studio: 確保您已安裝 Visual Studio 或其他 C# 開發環境。
創建一個新的 C# 控制台應用程式,或使用現有的專案來生成 Word 文件。
選擇主控台應用程式範本,然後點擊下一步。
在下一步中,您可以提供解決方案和專案名稱。
選擇 .NET 版本,然後點擊「Create」。
打開您的C#專案並安裝IronWord使用 NuGet 套件管理器控制台的程式庫:
Install-Package IronWord -Version 2024.1.2
如以下所示,也可以使用 Visual Studio 套件管理器安裝 NuGet 套件。
讓我們從使用 IronWord 庫創建 Word 文檔的簡單示例開始。 以下代碼示範如何建立一個基本的 Word 文件,其中包含一個段落,段落內容為 "Hello, World"!請提供您想要翻譯的內容。
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
執行上述程式碼範例後,會建立新的文件檔案 example.docx,輸出如下所示。
這是一個使用IronWord生成Word文件的基本示例。 欲了解更多信息,您可以參考文件。這裡.
現在我們已經知道如何使用 IronWord 創建一個簡單的 Word 文件,接下來我們來添加段落和樣式文本。
TextRun 也可以採用樣式數據,增強文本的視覺表現。 文字可以設定各種樣式,如刪除線、粗體、斜體和底線。
修改並添加以下程式碼到您之前製作的程式中。
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
為了清晰地呈現數據,也可以將其表示在網格中。 當數據以網格形式排列時,稱為表格。 使用 IronWord,我們可以像下面展示的那樣將表格和圖片添加到 Word 文件中:
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
在上面的範例中,我們使用邊框在Word文檔中添加了一個表格。
圖片增強了文件的呈現,並且可以增加更多色彩和視覺吸引力。
可以使用 IronWord 按如下代碼將圖片以程式方式添加到 Word 文件中:
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
在這裡,我們使用 IronWord.Models.Image,將高度和寬度為 200 像素的圖像添加到段落中。
IronWord 需要授權才能使用。 試用鍵可以從 Iron Software 網站獲取這裡. 此鍵需要放置在 appsettings.json 中。
{
"IronWord.LicenseKey":"IRONWORD.MYLICENSE.KEY.TRIAL"
}
{
"IronWord.LicenseKey":"IRONWORD.MYLICENSE.KEY.TRIAL"
}
If True Then
"IronWord.LicenseKey":"IRONWORD.MYLICENSE.KEY.TRIAL"
End If
提供您的電子郵件以獲取試用許可證。 在您提交電子郵件ID後,密鑰將通過電子郵件發送。
使用C#建立Word文件IronWord該庫提供了一種靈活且高效的方法來生成文件,而不依賴於 Microsoft Office。無論您需要創建簡單的信件還是包含表格和圖片的複雜報告,IronWord 都能夠讓您以編程方式實現這一點。 本文提供了有關建立 Word 文件的全面教程。 使用 IronWord,您可以自動化創建 Word 文件,使您的 C# 應用程式更加多功能和高效。
對於希望將 PDF 文件操作與其生成的 Word 文件結合在一起的開發人員來說,IronPDF 是由 Iron Software 提供的另一個 C# 庫,是您不二的選擇。 查看詳情,請點擊這裡.