SearchTextBatch
Текст, Извлечение
Описание
Ищет по нескольким текстовым запросам, пока текстовые блоки каждой запрошенной страницы резидентны, избегая отдельного прохода извлечения на каждый запрос
Совпадения выдаются в порядке страниц, текстовых блоков и массива запросов
Синтаксис
Function TPDFlib.SearchTextBatch(Const Queries: Array Of TPDFlibSearchQuery; Const PageRange: WideString; Var Hits: Array Of TPDFlibSearchBatchHit): Integer;Параметры
| Queries | Текст запроса и опции для каждого индекса запроса с отсчетом от нуля; пустой текст запроса игнорируется |
|---|---|
| PageRange | Пустая строка для каждой страницы либо выражение диапазона страниц с нумерацией от единицы |
| Hits | Предоставленный вызывающим кодом буфер результата |
Возвращаемое значение
Возвращает полное число совпадений по запросам и текстовым блокам, даже когда Hits меньше результирующего набора
Производительность
Каждая страница извлекается один раз на весь массив запросов, регистронезависимое свёртывание выполняется один раз на блок, геометрия попаданий считается один раз для блоков, совпавших с одним или несколькими запросами
Пример
SetLength(Queries, 2);
Queries[0].Query := 'invoice';
Queries[0].Options := [soWholeWord];
Queries[1].Query := 'overdue';
Queries[1].Options := [];
SetLength(Hits, 128);
Total := PDF.SearchTextBatch(Queries, '', Hits);См. также
SearchTextBatchEach, TPDFlibSearchQuery, TPDFlibSearchBatchHit, SearchText