C# 如何在PDF文档中根据关键字查找文本并给文本设置背景颜色

我们在阅读PDF文件时,由于内容比较多,一下找不到我们想要查看的内容,这时我们就会使用PDF阅读软件中的查找功能来快速定位到指定的文本。在这篇文章中,我将介绍如何使用C#和免费Spire.PDF组件来实现这一功能。


首先创建一个C#控制台应用程序,在NuGet Package Manager中搜索并安装Free Spire.PDF,如下图所示:


安装后,Free Spire.PDF dll就会自动引用到工程中。下面是实现的具体步骤:

步骤1:加载PDF文档。

PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("Input.pdf");

步骤2:根据关键词查找PDF页面中匹配的文本,并为每个匹配文本设置背景颜色。

PdfTextFind[] AllMatchedText = null;
//遍历页面
foreach (PdfPageBase page in pdf.Pages)
{
    //根据关键词查找页面中匹配的文本
    AllMatchedText = page.FindText("绣球花").Finds;
    foreach (PdfTextFind text in AllMatchedText)
    {
        //给匹配的文本设置背景颜色
        text.ApplyHighLight();
    }
}
其中ApplyHighLight()方法默认设置背景颜色为黄色,如果需要自定义颜色,使用以下方法:
text.ApplyHighLight(Color.Green);
步骤3:保存文档。

pdf.SaveToFile("FindAndHighlight.pdf");

效果:



完整代码:

using Spire.Pdf;
using Spire.Pdf.General.Find;
 
namespace FindText
{
    class Program
    {
        static void Main(string[] args)
        {
            PdfDocument pdf = newPdfDocument();
            pdf.LoadFromFile("Input.pdf");
 
            PdfTextFind[] AllMatchedText = null;
 
            foreach (PdfPageBase page in pdf.Pages)
            {
               AllMatchedText = page.FindText("绣球花").Finds;
               foreach (PdfTextFindtext in AllMatchedText)
               {
                   text.ApplyHighLight();//默认设置背景色为黄色
                   //text.ApplyHighLight(Color.Green); //设置自定义背景颜色
               }
            }
 
           pdf.SaveToFile("FindAndHighlight.pdf");
        }
    }
}

除了查找文本以外,Free Spire.PDF还支持读取PDF文档中的文本和图片,如果有需要,可以参考 从PDF文档提取文本和图片这篇文章。希望我的文章能对你有所帮助。


 

 

 

 

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值