PDFium Delphi Component Docs

PageToDevice метод

Component: TPdf  ·  Unit: PDFium
Описує метод TPdf.PageToDevice у PDFium Delphi Component і пояснює, коли використовувати цей член API

Syntax

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

PageX, PageYDouble. Координати простору користувача PDF для перетворення (початок координат у нижньому лівому куті, одиниці — пункти)
Left, Top, Width, HeightInteger. Прямокутник рендерингу, що був переданий у відповідний виклик RenderPage
RotationTRotation. Поворот сторінки, використаний під час рендерингу. Має збігатися зі значенням, переданим у RenderPage
X, YInteger. Вихідні параметри, що отримують перетворені піксельні координати простору пристрою (початок координат у верхньому лівому куті)

Return Value

Повертає True, якщо перетворення завершилося успішно, або False, якщо воно провалилося (наприклад, коли жодна сторінка не завантажена)

Description

Перетворює точку з простору користувача PDF (пункти) у простір пристрою (пікселі екрана). Використайте цей метод, щоб визначити, куди потрапляє відома позиція в координатах PDF на відрендереному зображенні — наприклад, щоб розмістити накладання анотації або прямокутник підсвітки

Простір користувача PDF має початок координат у нижньому лівому куті сторінки, вісь Y спрямована вгору. Простір пристрою має початок координат у верхньому лівому куті прямокутника рендерингу, вісь Y спрямована вниз

Параметри Left, Top, Width, Height і Rotation мають точно збігатися з тим, що було передано у виклик RenderPage, який створив зображення, на яке виконується відображення

Example

// Draw a marker on screen at a known PDF position
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