PDFium Delphi Component Docs

DeviceToPage metoda

Komponenta: TPdf  ·  Jedinica: PDFium
Pretvara zaslonsku koordinatu točke u koordinatu stranice

Sintaksa

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

X, YInteger. Koordinate točke koja se pretvara, u prostoru uređaja (zaslonski pikseli, ishodište u gornjem lijevom kutu)
Left, Top, Width, HeightInteger. Pravokutnik renderiranja koji je proslijeđen odgovarajućem pozivu RenderPage
RotationTRotation. Rotacija stranice korištena pri renderiranju. Mora se podudarati s vrijednošću proslijeđenom pozivu RenderPage
PageX, PageYDouble. Izlazni parametri koji primaju pretvorene koordinate PDF korisničkog prostora (ishodište u donjem lijevom kutu, jedinice u točkama)

Povratna vrijednost

Vraća True ako je pretvorba uspjela, ili False ako nije (na primjer, ako nijedna stranica nije učitana)

Opis

Pretvara točku iz prostora uređaja (zaslonski pikseli) u PDF korisnički prostor (točke). Koristite ovu metodu da biste položaj klika mišem na renderiranoj stranici preveli natrag na odgovarajući položaj na PDF stranici

PDF korisnički prostor ima ishodište u donjem lijevom kutu stranice, s Y osi usmjerenom prema gore. Prostor uređaja ima ishodište u gornjem lijevom kutu pravokutnika renderiranja, s Y osi usmjerenom prema dolje

Parametri Left, Top, Width, Height i Rotation moraju se točno podudarati s onim što je proslijeđeno pozivu RenderPage koji je stvorio sliku na koju se klikće

Primjer

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

Vidi također

PageToDevice, RenderPage, PageWidth, PageHeight