procedure TransformPageObjectClipPath(Index: Integer; const Matrix: FS_MATRIX);
| Index | Integer. Az oldalobjektum nulla-alapú indexe, a 0 .. ObjectCount - 1 tartományban |
| Matrix | FS_MATRIX. Affin transzformáció (a, b, c, d, e, f), amely a meglévő clip útvonal geometriájára fűződik rá |
Amíg a TransformPageObject mozgatja, skálázza vagy forgatja az objektumot, ez a hívás csak az objektum clip útvonalát transzformálja a natív FPDFPageObj_TransformClipPath belépési ponton keresztül: az objektum megtartja a saját mátrixát, miközben az a régió, amelyre ki van vágva, átalakul. Használja arra, hogy egy objektum megnövelése után kinagyítsa a kivágási ablakot, vagy hogy áthelyezzen egy olyan clipet, amely már nem egyezik a tartalmával
A mátrix a jelenlegi clip útvonal geometriájára fűződik rá, nem helyettesíti azt, így az ismételt hívások összeadódnak. A jelenlegi clipet először a PageObjectClipPath útján vizsgálja meg
A szövegoldal-gyorsítótár a változtatás előtt kiürül, az oldal pedig utána újragenerálódik (UpdatePage), így a függő keresések felveszik az új geometriát. A hívás megköveteli, hogy az aktuális oldal aktív legyen, és EPdfError kivételt vált ki (Page object clip path transforms are not available), ha a betöltött PDFium build nem exportálja a natív belépési pontot
var
M: FS_MATRIX;
begin
// widen the clip region of object 4 to twice its size, same origin
FillChar(M, SizeOf(M), 0);
M.a := 2;
M.d := 2;
Pdf1.TransformPageObjectClipPath(4, M);
end;