PDFium Delphi Component Docs

LinkZOrderAtPoint Método

Componente: TPdf  ·  Unidad: PDFium
Realiza una prueba de posicionamiento de una coordenada en espacio de página contra las anotaciones de enlace nativas y devuelve el orden Z del enlace que cubre ese punto

Syntax

function LinkZOrderAtPoint(X, Y: Double): Integer;

X, YDouble. Punto en unidades de página PDF, con el origen en la esquina inferior izquierda de la página
ResultInteger. El orden Z del enlace que cubre el punto según informa la prueba de posicionamiento nativa, o -1 cuando ningún enlace lo cubre

Description

Compañero de LinkAtPoint: en lugar de una respuesta simple de sí/no, la prueba de posicionamiento nativa (FPDFLink_GetLinkZOrderAtPoint) devuelve el orden Z del enlace encontrado en la coordenada. Cuando varios enlaces se superponen, el orden Z identifica sobre cuál debe actuar el visor en esa posición

La prueba se ejecuta dentro de PDFium, por lo que respeta la geometría real de puntos cuádruples de las anotaciones de enlace en lugar de los cuadros delimitadores expuestos por LinkAnnotation — un enlace que sigue un texto ajustado se empareja según su forma real

Un resultado de -1 significa que el punto no está sobre ningún enlace. La llamada requiere que la página actual esté activa. Convierta antes la posición del ratón a unidades de página con DeviceToPage

Remarks

Example

var PX, PY: Double;
begin
  if Pdf1.DeviceToPage(MouseX, MouseY, 0, 0, W, H, ro0, PX, PY) then
  begin
    Memo1.Lines.Add('Link z-order: ' + IntToStr(Pdf1.LinkZOrderAtPoint(PX, PY)));
    // -1 means the point is not covered by any link
  end;
end;

See Also

LinkAtPoint, LinkAnnotation, LinkAnnotationCount, FormFieldZOrderAtPoint, DeviceToPage