https://www.cnblogs.com/txgh/p/15807085.html

在窗体上放置TPdfView组件PdfView1和TPdf组件Pdf1,并设置PdfView1的Pdf属性指向Pdf1

增加PdfView1的OnPaint事件PdfView1Paint

在窗体上放置TButton组件Button10 和 Button11,并设置Button10的Caption为开始查找 Button11的Caption为查找下一个

点击Button10开始查找,再点击Button11查找下一个,查找到的内容背景色变为黄色

varSearchStart: Integer = -1;SearchEnd: Integer = -1;SearchText: WString;procedure TForm1.Button10Click(Sender: TObject);
begin//读取pdf文件Pdf1.FileName := 'C:\LargeFile.pdf';//设置要查找的页PdfView1.PageNumber := 1;//打开PDFPdfView1.Active := True;//查找的内容SearchText := '星期一';//初始化查找信息SearchStart := PdfView1.FindFirst(SearchText, []);
end;procedure TForm1.Button11Click(Sender: TObject);
begin//只有调用FindFirst后才能调用FindNext或FindPreviousif SearchStart = -1 then Exit;//查找下一个SearchStart := PdfView1.FindNext;//查找上一个//SearchStart := Pdf1.FindPrevious;//如果当前页没有找到时,切换下一页继续查找if SearchStart > -1 thenbegin//重绘页面
    PdfView1.Invalidate;endelse if PdfView1.PageNumber < PdfView1.PageCount thenbeginPdfView1.PageNumber := PdfView1.PageNumber + 1;SearchStart := PdfView1.FindFirst(SearchText, []);end;
end;procedure TForm1.PdfView1Paint(Sender: TObject);
beginif not PdfView1.Active then Exit;if SearchStart > -1 thenbegin//计算字符长度 AnsiString字符的delphi版本,PDFium中使用的是WString类型SearchEnd := SearchStart + Length(SearchText) - 1;//设置背景色
    PdfView1.PaintSelection(SearchStart, SearchEnd, clYellow);end;
end;

 


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/928465.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!