PDFium Delphi Component Docs

WebLinkCount Свойство

Компонент: TPdf  ·  Модуль: PDFium
Количество автоматически обнаруженных веб-URL, идентифицированных сканированием текста страницы

Syntax

property WebLinkCount[PageNumber: Integer]: Integer; // read only

Description

WebLinkCount сообщает количество шаблонов URL, обнаруженных PDFium на странице, заданной аргументом PageNumber (отсчёт от 1), путём сканирования отрисованной текстовой страницы. В отличие от LinkAnnotationCount — который подсчитывает явные аннотации /Link, объявленные автором PDF — WebLinkCount выявляет URL, появляющиеся как обычный текст (например, https://example.com), но не обёрнутые в кликабельную аннотацию. PDFium использует сопоставление шаблонов (FPDFLink_LoadWebLinks на FPDF_TEXTPAGE) для обнаружения http, https, mailto: и нескольких других распространённых схем URI

Значение равно 0, когда Active равно False или когда не найдено ни одного шаблона URL. Передавайте PageNumber в диапазоне 1 .. PageCount. WebLinkCount управляет уровнем автообнаружения, используемым TPdfView.OnWebLinkClick и параметром loAutoOpenURI — оба полагаются на одни и те же результаты сканирования

Используйте WebLink[PageNumber, Index] для получения записи TWebLink (строка URL плюс массив ограничивающих прямоугольников TPdfRectangle, по одному на строку, так как один URL может переноситься). Результаты сканирования кэшируются для каждой страницы до её перезагрузки, поэтому повторные чтения WebLinkCount дёшевы; первое чтение для данной страницы выполняет фактическое сканирование

Remarks

Example

var P, I: Integer;
var Link: TWebLink;
for P := 1 to Pdf1.PageCount do
  for I := 0 to Pdf1.WebLinkCount[P] - 1 do
  begin
    Link := Pdf1.WebLink[P, I];
    Memo1.Lines.Add(Link.Url);
  end;

See Also

WebLink, LinkAnnotationCount, TPdfView.OnWebLinkClick, TPdfView.LinkOptions