function LinkAtPoint(X, Y: Double): Boolean;
| X, Y | Double。以 PDF 页面单位计的点,原点在页面左下角 |
| Result | Boolean。链接注释覆盖该点时为 True |
直接询问 PDFium 是否存在链接,而非扫描 LinkAnnotation 的矩形。原生测试尊重注释的四边形点,因此跟随换行文本的链接按其实际形状匹配,而非其外接框
它只回答存在与否。要读取目标或 URI,遍历 LinkAnnotation 和 LinkAnnotationCount;页面文本中自动检测的 URL 用 WebLink
调用前用 DeviceToPage 把鼠标位置转换为页面单位
var PX, PY: Double;
if Pdf.DeviceToPage(X, Y, 0, 0, W, H, ro0, PX, PY) then
if Pdf.LinkAtPoint(PX, PY) then
Screen.Cursor := crHandPoint;