在 PDF 文档中,突出显示文本可以让读者更加关注文档中的特定内容。我们可以通过突出显示关键的字、词或句子来提示读者文档中的关键信息,方便读者定位和获取这些信息,从而提升阅读效率和阅读体验。本文将介绍如何使用 Spire.PDF for .NET 通过程序查找并突出显示指定文本内容。
安装 Spire.PDF for .NET
首先,您需要添加 Spire.PDF for .NET 包中包含的 DLL 文件作为 .NET 项目中的引用。DLL 文件可以从此链接下载或通过 NuGet 安装。
PM> Install-Package Spire.PDF
查找并突出显示指定文本
我们可以使用 PdfTextFinder.Find() 方法来查找指定文本,然后再使用 PdfTextFragment.Highlight() 方法来突出显示查找到的文本。详细操作步骤如下:
- 创建 PdfDocument 的对象。
- 使用 PdfDocument.LoadFromFile() 方法载入 PDF 文档。
- 创建 PdfTextFindOptions 的对象。
- 通过 PdfTextFindOptions.Parameter 属性设置文本查找参数。
- 循环遍历 PDF 文档中的页面,查找并突出显示指定文本。
- 创建 PdfTextFinder 的对象并通过 PdfTextFinder.Options 属性设置文本查找选项。
- 使用 PdfTextFinder.Find() 方法在文档中查找指定文本,并将结果保存到 PdfTextFragment 列表。
- 循环遍历该列表,并调用 PdfTextFragment.Highlight() 方法,用颜色突出显示所有出现的指定文本。
- 使用 PdfDocument.SaveToFile() 方法保存结果文档。
- C#
- VB.NET
using Spire.Pdf;
using Spire.Pdf.Texts;
using System.Collections.Generic;
using System.Drawing;
namespace HighlightTextInPdf
{
internal class Program
{
static void Main(string[] args)
{
//创建PdfDocument的对象
PdfDocument pdf = new PdfDocument();
//载入PDF文档
pdf.LoadFromFile("C:/示例.pdf");
//创建PdfTextFindOptions的对象
PdfTextFindOptions findOptions = new PdfTextFindOptions();
//设置文本查找参数
findOptions.Parameter = TextFindParameter.WholeWord;
//循环遍历文档中的页面
foreach (PdfPageBase page in pdf.Pages)
{
//创建PdfTextFinder的对象
PdfTextFinder finder = new PdfTextFinder(page);
//设置文本查找选项
finder.Options = findOptions;
//查找指定文本
List<PdfTextFragment> results = finder.Find("永恒的宇宙");
//突出显示查找到的所有指定文本
foreach (PdfTextFragment text in results)
{
text.HighLight(Color.GreenYellow);
}
}
//保存文档
pdf.SaveToFile("突出显示文本.pdf");
}
}
}
Imports Spire.Pdf
Imports Spire.Pdf.Exporting.XPS.Schema
Imports Spire.Pdf.Texts
Imports System.Collections.Generic
Imports System.Drawing
Namespace HighlightTextInPdf
Friend Class Program
Shared Sub Main(ByVal args() As String)
'创建PdfDocument的对象
Dim pdf As PdfDocument = New PdfDocument()
'载入PDF文档
pdf.LoadFromFile("C:/示例.pdf")
'创建PdfTextFindOptions的对象
Dim findOptions As PdfTextFindOptions = New PdfTextFindOptions()
'设置文本查找参数
findOptions.Parameter = TextFindParameter.WholeWord
'循环遍历文档中的页面
Dim page As PdfPageBase
For Each page In pdf.Pages
'创建PdfTextFinder的对象
Dim finder As PdfTextFinder = New PdfTextFinder(page)
'设置文本查找选项
finder.Options = findOptions
'查找指定文本
Dim results As List<PdfTextFragment>= finder.Find("永恒的宇宙")
'突出显示查找到的所有指定文本
Dim text As PdfTextFragment
For Each text In results
text.HighLight(Color.GreenYellow)
Next
Next
'保存文档
pdf.SaveToFile("突出显示文本.pdf")
End Sub
End Class
End Namespace
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。