在篇幅较长的 Word 文档中查找指定的文本内容是比较麻烦的事情,好在 MS Word 提供了查找功能,能够快速定位到文档中指定内容所在的位置。当然,你还可以对找到的文本内容进行突出显示,以防读者遗漏这些内容。本文将介绍如何使用 Spire.Doc for .NET 以编程的方式在 Word 文档中查找并突出显示文本。
安装 Spire.Doc for .NET
首先,您需要将 Spire.Doc for.NET 包含的 DLL 文件作为引用添加到您的 .NET 项目中。DLL 文件可以从此链接下载,也可以通过 NuGet 安装。
PM> Install-Package Spire.Doc
在 Word 文档中查找并突出显示指定文本
详细操作步骤如下:
- 创建 Document 类的对象。
- 用 Document.LoadFromFile() 方法载入 Word 文档。
- 用 Document.FindAllString(string matchString, bool caseSensitive, bool wholeWord) 方法找到所有匹配的文本。
- 循环遍历所有匹配的文本。
- 用 TextSelection.GetAsOneRange() 方法获取特定匹配的文本的文本范围,再用 TextRange.CharacterFormat.HighlightColor 属性设置高亮显示。
- 用 Document.SaveToFile() 方法保存文档。
- C#
- VB.NET
using System;
using System.Drawing;
using Spire.Doc;
using Spire.Doc.Documents;
namespace FindAndHighlightText
{
internal class Program
{
static void Main(string[] args)
{
//创建 Document 类的对象
Document document = new Document();
//载入Word文档
document.LoadFromFile(@"C:/示例.docx");
//找到所有匹配的文本
TextSelection[] text = document.FindAllString("庄子", false, true);
//循环遍历所有匹配的文本,并设置突出显示
foreach (TextSelection seletion in text)
{
seletion.GetAsOneRange().CharacterFormat.HighlightColor = Color.Yellow;
}
//保存文档
document.SaveToFile("查找并突出显示文本.docx", FileFormat.Docx);
}
}
}
Imports System
Imports System.Drawing
Imports Spire.Doc
Imports Spire.Doc.Documents
Namespace FindAndHighlightText
Friend Class Program
Shared Sub Main(ByVal args() As String)
'创建 Document 类的对象
Dim document As Document = New Document()
'载入Word文档
document.LoadFromFile("C:/示例.docx")
'找到所有匹配的文本
Dim text() As TextSelection = document.FindAllString("庄子", False, True)
'循环遍历所有匹配的文本,并设置突出显示
Dim seletion As TextSelection
For Each seletion In text
seletion.GetAsOneRange().CharacterFormat.HighlightColor = Color.Yellow
Next
'保存文档
document.SaveToFile("查找并突出显示文本.docx", FileFormat.Docx)
End Sub
End Class
End Namespace
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。