procedure TransformPageObject(Index: Integer; const Matrix: FS_MATRIX);
| Index | Integer ดัชนีแบบ zero-based ของ page object ที่จะแปลง |
| 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;