PDFium Delphi Component Docs

DeviceToPage Metodo

Componente: TPdf  ·  Unità: PDFium
Converte la coordinata schermo di un punto nella coordinata della pagina

Syntax

function DeviceToPage(X, Y, Left, Top, Width, Height: Integer; Rotation: TRotation; out PageX, PageY: Double): Boolean;

X, YInteger. Le coordinate device-space del punto da convertire (pixel schermo, origine in alto a sinistra)
Left, Top, Width, HeightInteger. Il rettangolo di rendering passato alla chiamata RenderPage corrispondente
RotationTRotation. La rotazione della pagina usata durante il rendering. Deve corrispondere al valore passato a RenderPage
PageX, PageYDouble. Parametri di output che ricevono le coordinate user-space PDF convertite (origine in basso a sinistra, unità in punti)

Return Value

Restituisce True se la conversione riesce, oppure False se fallisce per esempio se non è caricata alcuna pagina

Description

Converte un punto dallo spazio del dispositivo (pixel dello schermo) allo spazio utente PDF (punti). Usa questo metodo per riportare la posizione di un clic del mouse su una pagina renderizzata alla posizione corrispondente sulla pagina PDF.

Lo spazio utente PDF ha origine nell'angolo inferiore sinistro della pagina, con l'asse Y rivolto verso l'alto. Lo spazio del dispositivo ha origine nell'angolo superiore sinistro del rettangolo di rendering, con l'asse Y rivolto verso il basso.

I parametri Left, Top, Width, Height e Rotation devono corrispondere esattamente a quelli passati alla chiamata RenderPage che ha prodotto l'immagine su cui si fa clic.

Example

// 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;

See Also

PageToDevice, RenderPage, PageWidth, PageHeight