SearchText

Текст, Извлечение

Описание

Ищет текстовые блоки по запрошенному диапазону страниц и копирует попадания в переданный массив, возвращая общее число совпадений, даже если массив меньше

Метод сообщает прогресс по страницам через OnProgress, уважает Abort между страницами и блоками и восстанавливает страницу, выбранную до поиска

Начиная с v3.430.0 TPDFlibSearchOption также принимает soDiacriticInsensitive (свёртка Unicode 1:1, чтобы простые буквы совпадали с латинскими, греческими и кириллическими аналогами с диакритикой), soWildcards (* и ? в запросе, самое длинное совпадение слева, совместимо с целым словом) и soAcrossLines (фразы могут пересекать разрывы строк и блоков через совпадение со склейкой страниц)

Начиная с v3.452.0 soCanonicalEquivalent совпадает по канонически эквивалентному тексту NFC и NFD, сохраняя исходные координаты попаданий, а soGraphemeClusters не дает совпадениям и заменам разрывать суррогатные пары, комбинируемые последовательности, ZWJ-последовательности эмодзи, флаги или индийские лигатуры. В комбинации с soWildcards один ? поглощает один полный графемный кластер

Совпадения дополнительно несут позиции MatchStart и MatchLength внутри текста блока, плюс фрагменты ContextBefore и ContextAfter, когда SearchContextChars больше нуля

Используйте SearchTextEach, когда совпадения нужно потреблять немедленно, не подбирая емкость массива результата

Синтаксис

Delphi

Function TPDFlib.SearchText(Const Query: WideString; Options: TPDFlibSearchOptions; Const PageRange: WideString; Var Hits: Array Of TPDFlibSearchHit): Integer;

Параметры

Подробные описания параметров смотрите в PDF Library for Delphi Developer Guide и комментариях в заголовке модуля

Возвращаемое значение

Конкретную семантику возвращаемых значений смотрите в PDF Library for Delphi Developer Guide

Примечания

Для получения дополнительной информации, пожалуйста, обратитесь к соответствующей документации библиотеки или демонстрационным проектам.