PDFium Delphi Component Docs

TransformPageObject Метод

Компонент: TPdf  ·  Модуль: PDFium
Умножает матрицу преобразования одного объекта страницы, перемещая, масштабируя, поворачивая или наклоняя его на месте

Syntax

procedure TransformPageObject(Index: Integer; const Matrix: FS_MATRIX);

IndexInteger. Отсчитываемый от нуля индекс преобразуемого объекта страницы
MatrixFS_MATRIX. Применяемое преобразование с полями a, b, c, d, e, f в порядке матрицы PDF. Перенос живёт в e и f и выражается в пунктах

Description

Дописывает Matrix к существующей матрице объекта, а не заменяет её, поэтому повторные вызовы накапливаются. Чтобы вместо этого задать абсолютную матрицу, запишите поле Matrix из PageObjectInfo обратно через UpdatePageObject с флагом pocMatrix

Единичная матрица — (1, 0, 0, 1, 0, 0). Перенос на dx, dy пунктов — (1, 0, 0, 1, dx, dy); масштабирование на sx, sy(sx, 0, 0, sy, 0, 0); поворот на угол использует косинус и синус в a, b, c, d

Перемещается только один объект. Чтобы преобразовать страницу целиком вместе с аннотациями, используйте TransformPageContent и TransformPageAnnotations

Example

var M: FS_MATRIX;
M.a := 1; M.b := 0; M.c := 0; M.d := 1;
M.e := 72; M.f := 0; // shift one inch to the right
Pdf.TransformPageObject(0, M);
Pdf.UpdatePage;

See Also

UpdatePageObject, TransformPageContent, TransformPageAnnotations, PageObjectInfo