function LinkZOrderAtPoint(X, Y: Double): Integer;
| X, Y | Double. Punkt i PDF-sidenheter, med origo i sidans nedre vänstra hörn |
| Result | Integer. Z-ordningen för länken som täcker punkten enligt det inbyggda träfftestet, eller -1 när ingen länk täcker den |
Kamrat till LinkAtPoint: i stället för ett blott ja/nej-svar returnerar det inbyggda träfftestet (FPDFLink_GetLinkZOrderAtPoint) z-ordningen för länken som påträffades vid koordinaten. När flera länkar överlappar identifierar z-ordningen vilken som visaren ska agera på vid den positionen
Testet körs inuti PDFium, så det respekterar länkannoteringarnas verkliga quad-point-geometri i stället för de begränsningsrutor som LinkAnnotation exponerar — en länk som följer bruten text matchas på sin verkliga form
Resultatet -1 betyder att punkten inte ligger på någon länk. Anropet kräver att den aktuella sidan är aktiv. Konvertera en musposition till sidenheter med DeviceToPage först
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;