function PageToDevice(PageX, PageY: Double; Left, Top, Width, Height: Integer; Rotation: TRotation; out X, Y: Integer): Boolean;
| PageX, PageY | Double. Las coordenadas de espacio de usuario PDF a convertir (origen abajo a la izquierda, unidades en puntos) |
| Left, Top, Width, Height | Integer. El rectángulo de renderizado que se pasó a la llamada RenderPage correspondiente |
| Rotation | TRotation. La rotación de página usada al renderizar. Debe coincidir con el valor pasado a RenderPage |
| X, Y | Integer. Parámetros de salida que reciben las coordenadas de píxel de espacio de dispositivo convertidas (origen arriba a la izquierda) |
True si la conversión tuvo éxito, o False si falló (por ejemplo, si no hay ninguna página cargada)Convierte un punto del espacio de usuario PDF (puntos) al espacio de dispositivo (píxeles de pantalla). Use este método para determinar dónde cae una posición de coordenada PDF conocida sobre la imagen renderizada — por ejemplo, para posicionar una superposición de anotación o un rectángulo de resaltado
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 está mapeando
// Dibujar un marcador en pantalla en una posición PDF conocida
var
ScreenX, ScreenY: Integer;
begin
if Pdf.PageToDevice(100.0, 200.0, 0, 0,
PdfPanel.Width, PdfPanel.Height, ro0, ScreenX, ScreenY) then
begin
Canvas.Pen.Color := clRed;
Canvas.Ellipse(ScreenX - 4, ScreenY - 4, ScreenX + 4, ScreenY + 4);
end;
end;