用于创建文字处理文档的免费 .NET 库
通过开源 .NET API 读取、写入、操作和转换 Word 文件。
NetOffice 是一个开源 API,允许 .NET 开发人员自动化 Microsoft Office 并开发 Microsoft Office 插件。使用 API,开发人员可以使用 MS Office 版本 2000、2002、2003、2007、2010、2013 和 2016 中包含的所有功能。API 基于 COM 架构,您可以在其中检索应用程序中的 COM 代理对象,并且您必须释放每个 COM 代理对象。使用 NetOffice 的主要优点是能够同时使用不同版本的 Microsoft Office,并且它为管理 COM 代理提供了一种保护机制。
使用 API,您可以开发适用于 32 位和 64 位操作系统的应用程序。您可以在所有场景中使用 NetOffice 程序集,没有任何后顾之忧。 API 提供了一堆库来操作办公文档。为了使用 Microsoft Word 文档,您需要 WordApi.dll 与 OfficeApi.ddl、VBIDEApi.dll 和 NetOffice.dll 作为依赖项。
NetOffice 入门
首先,您需要拥有 .NET Framework 4.5 或更高版本。之后,请从 GitHub 手动下载存储库或从 NuGet 安装它。
从 NuGet 安装 NetOffice
Install-Package NetOfficeFw.Word
使用免费 C# API 创建 Word 文档
NetOffice 允许 .NET 程序员以编程方式创建 Microsoft Word 文件。为了创建word文件,首先,您需要初始化一个Word应用程序并关闭消息框。启动 Word 应用程序后,您可以使用 WordApplicaiton.Documents.Add() 方法向其中添加新文档。您可以使用 WrodApplication.Selection.TypeText() 方法在新创建的 word 文件中插入文本,并使用 WordApplicaiton.Selection.Font() 方法设置字体。完成文档后,您可以使用 Document.SaveAs() 方法保存它。
通过 NetOffice 库创建 Word 文档
// start word and turn off msg boxes
Word.Application wordApplication = new Word.Application();
wordApplication.DisplayAlerts = WdAlertLevel.wdAlertsNone;
// create a utils instance, no need for but helpful to keep the lines of code low
CommonUtils utils = new CommonUtils(wordApplication);
// add a new document
Word.Document newDocument = wordApplication.Documents.Add();
// insert some text
wordApplication.Selection.TypeText("This text is written by automation");
wordApplication.Selection.HomeKey(WdUnits.wdLine, WdMovementType.wdExtend);
wordApplication.Selection.Font.Color = WdColor.wdColorSeaGreen;
wordApplication.Selection.Font.Bold = 1;
wordApplication.Selection.Font.Size = 18;
// save the document
string documentFile = utils.File.Combine(HostApplication.RootDirectory, "Example01", DocumentFormat.Normal);
newDocument.SaveAs(documentFile);
// close word and dispose reference
wordApplication.Quit();
wordApplication.Dispose();
// show end dialog
HostApplication.ShowFinishDialog(null, documentFile);
使用 C# 在 Word 中创建表格
NetOffice 允许 .NET 程序员以编程方式在 Microsoft Word 文件中添加表格。为了首先在 Word 文件中添加表格,您需要初始化 Word 应用程序并关闭消息框并使用 WordApplicaiton.Documents.Add() 方法添加新文档。您可以通过初始化 Word.Table 并使用 Tables.Add(wordApplication.Selection.Range, 3, 2) 方法设置表格范围,在新创建的 word 文件中插入表格。您可以通过使用 table.Cell(1, 1).Select() 选择特定单元格并在其中插入文本来在单元格中插入文本。完成文档后,您可以使用 Document.SaveAs() 方法保存它。
通过 .NET 在 Word 文件中创建表格
Word.Application wordApplication = new Word.Application();
wordApplication.DisplayAlerts = WdAlertLevel.wdAlertsNone;
// create a utils instance, not need for but helpful to keep the lines of code low
CommonUtils utils = new CommonUtils(wordApplication);
// add a new document
Word.Document newDocument = wordApplication.Documents.Add();
// add a table
Word.Table table = newDocument.Tables.Add(wordApplication.Selection.Range, 3, 2);
// insert some text into the cells
table.Cell(1, 1).Select();
wordApplication.Selection.TypeText("This");
table.Cell(1, 2).Select();
wordApplication.Selection.TypeText("table");
table.Cell(2, 1).Select();
wordApplication.Selection.TypeText("was");
table.Cell(2, 2).Select();
wordApplication.Selection.TypeText("created");
table.Cell(3, 1).Select();
wordApplication.Selection.TypeText("by");
table.Cell(3, 2).Select();
wordApplication.Selection.TypeText("NetOffice");
// save the document
string documentFile = utils.File.Combine(HostApplication.RootDirectory, "Example02", DocumentFormat.Normal);
newDocument.SaveAs(documentFile);
// close word and dispose reference
wordApplication.Quit();
wordApplication.Dispose();
// show end dialog
HostApplication.ShowFinishDialog(null, documentFile);