function DeviceToPage(X, Y, Left, Top, Width, Height: Integer; Rotation: TRotation; out PageX, PageY: Double): Boolean;
| X, Y | Integer. Las coordenadas del espacio de dispositivo del punto a convertir (píxeles de pantalla, origen arriba a la izquierda) |
| Left, Top, Width, Height | Integer. El rectángulo de renderizado que se pasó a la llamada correspondiente a RenderPage |
| Rotation | TRotation. La rotación de página usada al renderizar. Debe coincidir con el valor pasado a RenderPage |
| PageX, PageY | Double. Parámetros de salida que reciben las coordenadas convertidas del espacio de usuario PDF (origen abajo a la izquierda, unidades en puntos) |
True si la conversión tuvo éxito, o False si falló, por ejemplo, si no hay ninguna página cargadaConvierte un punto del espacio de dispositivo (píxeles de pantalla) al espacio de usuario PDF (puntos). Use este método para traducir la posición de un clic del mouse sobre una página renderizada de vuelta a la posición correspondiente en la página PDF
El espacio de usuario PDF tiene su origen en la esquina inferior izquierda de la página, con el eje Y apuntando hacia arriba. El espacio de dispositivo tiene su origen en la esquina superior izquierda del rectángulo de renderizado, con el eje Y apuntando hacia abajo
Los parámetros Left, Top, Width, Height y Rotation deben coincidir exactamente con lo que se pasó a la llamada RenderPage que produjo la imagen sobre la que se hizo clic
// Translate a mouse click on the painted page to PDF coordinates
procedure TForm1.PdfPanelMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
PageX, PageY: Double;
begin
if Pdf.DeviceToPage(X, Y, 0, 0, PdfPanel.Width, PdfPanel.Height,
ro0, PageX, PageY) then
StatusBar1.SimpleText := Format('Page pos: %.1f, %.1f pt', [PageX, PageY]);
end;