property WebLinkCount[PageNumber: Integer]: Integer; // read only
WebLinkCount riporta il numero di pattern URL che PDFium ha individuato sulla pagina
identificata dall'argomento PageNumber a base uno, analizzando la text page
renderizzata. A differenza di LinkAnnotationCount — che conta le annotazioni
/Link esplicite dichiarate dall'autore del PDF — WebLinkCount porta alla luce
gli URL che compaiono come testo semplice (come https://esempio.it) ma che
non sono stati avvolti in un'annotazione cliccabile. PDFium usa il pattern matching
(FPDFLink_LoadWebLinks su una FPDF_TEXTPAGE) per individuare gli schemi URI
http, https, mailto: e una manciata di altri
schemi comuni
Il valore è 0 quando Active è False o quando
non viene trovato alcun pattern URL. Passa PageNumber nell'intervallo
1 .. PageCount. WebLinkCount alimenta il layer di auto-rilevamento usato da
TPdfView.OnWebLinkClick e dall'opzione loAutoOpenURI —
entrambi si affidano agli stessi risultati della scansione
Usa WebLink[PageNumber, Index] per recuperare un record TWebLink
(la stringa URL più un array di riquadri di delimitazione TPdfRectangle,
uno per riga dato che un singolo URL può andare a capo). Le scansioni sono messe in cache per pagina finché la pagina non viene
ricaricata, quindi le letture ripetute di WebLinkCount sono economiche; la prima lettura per una data
pagina esegue la scansione vera e propria
LinkAnnotationCount diverso da zero sia un
WebLinkCount diverso da zero per lo stesso URLTPdfView.OnWebLinkClick e imposta il parametro Handled
a True
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;