procedure TransformPageObjectClipPath(Index: Integer; const Matrix: FS_MATRIX);
| Index | Integer. Nollapohjainen sivuobjektin indeksi välillä 0 .. ObjectCount - 1 |
| Matrix | FS_MATRIX. Affiinimuunnos (a, b, c, d, e, f), joka yhdistetään olemassa olevan leikkauspolun geometriaan |
Siinä missä TransformPageObject siirtää, skaalaa tai kiertää objektia, tämä kutsu muuntaa vain objektin leikkauspolun natiivin FPDFPageObj_TransformClipPath-sisääntulopisteen kautta: objekti säilyttää oman matriisinsa, kun taas aluetta, johon se leikataan, muotoillaan uudelleen. Käytä sitä leikkausikkunan suurentamiseen objektin kasvattamisen jälkeen tai leikkauksen siirtämiseen, kun se ei enää vastaa sisältöään
Matriisi yhdistetään nykyisen leikkauspolun geometriaan korvaamatta sitä, joten toistuvat kutsut kertyvät. Tutki nykyinen leikkaus ensin PageObjectClipPath-ominaisuudella
Tekstisivuvälimuisti puretaan ennen muutosta ja sivu luodaan uudelleen sen jälkeen (UpdatePage), joten riippuvaiset hakut havaitsevat uuden geometrian. Kutsu vaatii, että nykyinen sivu on aktiivinen, ja nostaa EPdfError-poikkeuksen (Page object clip path transforms are not available), kun ladattu PDFium-build ei vie ulos natiivia sisääntulopistettä
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;