function PageToDevice(PageX, PageY: Double; Left, Top, Width, Height: Integer; Rotation: TRotation; out X, Y: Integer): Boolean;
| PageX, PageY | Double. Les coordonnées d’espace utilisateur PDF à convertir (origine en bas à gauche, unités en points) |
| Left, Top, Width, Height | Integer. Le rectangle de rendu qui a été passé à l’appel RenderPage correspondant |
| Rotation | TRotation. La rotation de page utilisée lors du rendu. Doit correspondre à la valeur passée à RenderPage |
| X, Y | Integer. Paramètres de sortie qui reçoivent les coordonnées de pixels d’espace périphérique converties (origine en haut à gauche) |
True si la conversion a réussi, ou False si elle a échoué (par exemple, si aucune page n’est chargée)Convertit un point de l'espace utilisateur PDF (points) vers l'espace périphérique (pixels écran). Utilisez cette méthode pour déterminer où une position connue en coordonnées PDF se situe sur l'image rendue — par exemple pour positionner une superposition d'annotation ou un rectangle de surlignage
L’espace utilisateur PDF a son origine au coin inférieur gauche de la page, avec l’axe Y orienté vers le haut. L’espace dispositif a son origine au coin supérieur gauche du rectangle de rendu, avec l’axe Y orienté vers le bas
Les paramètres Left, Top, Width, Height et Rotation doivent correspondre exactement à ce qui a été passé à l’appel RenderPage qui a produit l’image sur laquelle s’effectue la conversion
// Draw a marker on screen at a known PDF position
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;