PDFium Component Docs

DeviceToPage-metode

Component: TPdf  ·  Unit: PDFium
Konverter skjermkoordinaten til et punkt til sidekoordinat.

Syntax

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

X, YInteger. Enhetsrom-koordinatene til punktet som skal konverteres (skjermpiksler, origo øverst til venstre).
Left, Top, Width, HeightInteger. Renderingsrektangelet som ble sendt til det tilsvarende RenderPage-kallet.
RotationTRotation. Siderotasjonen som ble brukt ved rendering. Må samsvare med verdien sendt til RenderPage.
PageX, PageYDouble. Utdataparametere som mottar de konverterte PDF-brukerrom-koordinatene (origo nederst til venstre, enheter i punkter).

Return Value

Returnerer True hvis konverteringen lyktes, eller False hvis den feilet (for eksempel hvis ingen side er lastet).

Description

Konverterer et punkt fra enhetsrom (skjermpiksler) til PDF-brukerrom (punkter). Bruk denne metoden for å oversette en museklikk-posisjon på en rendret side tilbake til den tilsvarende posisjonen på PDF-siden.

PDF-brukerrom har sitt origo i sidens nedre venstre hjørne, med Y-aksen pekende oppover. Enhetsrom har sitt origo i renderingsrektangelets øvre venstre hjørne, med Y-aksen pekende nedover.

Parameterne Left, Top, Width, Height og Rotation må samsvare nøyaktig med det som ble sendt til RenderPage-kallet som produserte bildet det klikkes på.

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