function DeviceToPage(X, Y, Left, Top, Width, Height: Integer; Rotation: TRotation; out PageX, PageY: Double): Boolean;
| X, Y | Integer. Dönüştürülecek noktanın aygıt alanı koordinatları (ekran pikselleri, köken sol üstte). |
| Left, Top, Width, Height | Integer. İlgili RenderPage çağrısına geçirilen işleme dikdörtgeni. |
| Rotation | TRotation. İşleme sırasında kullanılan sayfa döndürmesi. RenderPage öğesine geçirilen değerle aynı olmalıdır. |
| PageX, PageY | Double. Dönüştürülen PDF kullanıcı alanı koordinatlarını alan çıkış parametreleri (köken sol altta, birim nokta cinsinden). |
True dönüştürme başarılıysa veya False başarısızsa (örneğin hiç sayfa yüklenmemişse).Bir noktayı aygıt alanından (ekran pikselleri) PDF kullanıcı alanına (nokta) dönüştürür. İşlenen bir sayfa üzerindeki bir fare tıklaması konumunu, PDF sayfasındaki karşılık gelen konuma geri çevirmek için bu yöntemi kullanın.
PDF kullanıcı alanının kökeni sayfanın sol alt köşesindedir ve Y ekseni yukarı doğru işaret eder. Aygıt alanının kökeni işleme dikdörtgeninin sol üst köşesindedir ve Y ekseni aşağı doğru işaret eder.
Left, Top, Width, Height ve Rotation parametreleri, tıklanan görüntüyü üreten RenderPage çağrısına geçirilenlerle tam olarak aynı olmalıdır.
// 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;