property LinkAnnotationCount[PageNumber: Integer]: Integer; // read only
LinkAnnotationCount devuelve la cantidad de entradas de subtipo /Link en la
página identificada por el argumento PageNumber basado en 1 (sección 12.5.6.5 de la
especificación PDF 1.7). A diferencia de AnnotationCount, que está restringida a la página
activa actual y cuenta todos los subtipos de anotación, esta propiedad indexada apunta directamente a
cualquier página y filtra solo las anotaciones de enlace — las entradas que envuelven una
región pulsable alrededor de texto o gráficos y apuntan a un destino, URI, acción de
lanzamiento o acción con nombre
Pase PageNumber en el rango 1 .. PageCount. El valor es
0 cuando Active es False, cuando el índice de página es
inválido o cuando la página simplemente no contiene anotaciones de enlace. PDFium Delphi Component también
expone por separado las URL web “autodetectadas” a través de WebLinkCount
— estas provienen del escaneo de patrones de texto y no forman parte de LinkAnnotationCount
Use LinkAnnotation[PageNumber, Index] con índices de 0
a LinkAnnotationCount[PageNumber] - 1 para recuperar un
registro TLinkAnnotation — rectángulo delimitador, número de página de
destino, tipo de acción, puntos de cuadrilátero para enlaces multilínea y la carga
útil de la acción resuelta. Cargar los metadatos de enlace es O(n) por página;
almacene en caché al iterar muchas páginas
Index basado en cero de la mayoría de los
indexadores estilo arregloWebLinkCount al implementar una superposición unificada de
“zonas interactivas pulsables” en un visor personalizado0 en lugar de lanzar una excepción — seguro de
usar dentro de sondeos con hilos sin envolver en try/except
var P, I: Integer;
var Link: TLinkAnnotation;
for P := 1 to Pdf1.PageCount do
for I := 0 to Pdf1.LinkAnnotationCount[P] - 1 do
begin
Link := Pdf1.LinkAnnotation[P, I];
Memo1.Lines.Add(Format('p%d link → page %d', [P, Link.PageNumber]));
end;