procedure TransformPageObject(Index: Integer; const Matrix: FS_MATRIX);
| Index | Integer. Отсчитываемый от нуля индекс преобразуемого объекта страницы |
| Matrix | FS_MATRIX. Применяемое преобразование с полями a, b, c, d, e, f в порядке матрицы PDF. Перенос живёт в e и f и выражается в пунктах |
Дописывает 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
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;