PDFium Delphi Component Docs

PageToDevice Methode

Komponente: TPdf  ·  Unit: PDFium
Wandelt eine Seitenkoordinate in eine Bildschirmkoordinate um

Syntax

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

PageX, PageYDouble. Die umzurechnenden PDF-Benutzerkoordinaten (Ursprung unten links, Einheiten in Punkten)
Left, Top, Width, HeightInteger. Das Rendering-Rechteck, das dem entsprechenden RenderPage-Aufruf übergeben wurde
RotationTRotation. Die beim Rendern verwendete Seitendrehung. Muss mit dem an RenderPage übergebenen Wert übereinstimmen
X, YInteger. Ausgabeparameter, die die umgerechneten Pixelkoordinaten im Geräteraum aufnehmen (Ursprung oben links)

Return Value

Gibt True zurück, wenn die Umrechnung erfolgreich war, oder False, wenn sie fehlgeschlagen ist (etwa wenn keine Seite geladen ist)

Description

Rechnet einen Punkt vom PDF-Benutzerraum (Punkte) in den Geräteraum (Bildschirmpixel) um. Verwenden Sie diese Methode, um zu bestimmen, wo eine bekannte PDF-Koordinatenposition auf dem gerenderten Bild liegt — etwa um eine Anmerkungsüberlagerung oder ein Hervorhebungsrechteck zu positionieren

Der PDF-Benutzerraum hat seinen Ursprung an der unteren linken Ecke der Seite, wobei die Y-Achse nach oben zeigt. Der Geräteraum hat seinen Ursprung an der oberen linken Ecke des Render-Rechtecks, wobei die Y-Achse nach unten zeigt

Die Parameter Left, Top, Width, Height und Rotation müssen exakt dem entsprechen, was an den RenderPage-Aufruf übergeben wurde, der das abzubildende Bild erzeugt hat

Example

// Eine Markierung an einer bekannten PDF-Position auf dem Bildschirm zeichnen
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;

See Also

DeviceToPage, RenderPage, PageWidth, PageHeight