RedactRegion
Manipulace se stránkou
Popis
Skutečně odstraní text, vektorové cesty a image XObjecty, jejichž vykreslená plocha protíná obdélník, úpravou obsahového proudu stránky, takže podkladové glyfy, vektory i obrazové bajty zmizí a nedají se obnovit. To je zásadně jiné než MaskRect, který přes obsah jen natře neprůhledný obdélník (původní bajty zůstávají a dají se extrahovat)
Pro každou obsahovou vrstvu metoda parsuje proud, sleduje CTM (s respektem ke cm/q/Q), identifikuje instrukce, jejichž transformovaný ohraničující box protíná oblast, a smaže je. Volitelné chování řízené přes Options: otisknout nad oblastí černý vyplněný box a vypsat standardní anotaci /Subtype /Redact
Omezení: sledování CTM je přibližné u smykových a otočených transformací (lineární škálování a identitní základna se obstarávají přesně). Šířka textu se odhaduje z počtu glyfů a velikosti fontu, protože samotný obsahový proud nenese žádné metriky. Umístění image XObject se aproximuje jako jednotkový čtverec transformovaný CTM
Syntaxe
Delphi
Function TPDFlib.RedactRegion(Page: Integer; Left, Top, Width, Height: Double; Options: Integer): Integer;
Parametry
| Page | The 1-based page number |
|---|---|
| Left, Top | Levý horní roh oblasti v aktuálních měrných jednotkách (původ vlevo nahoře) |
| Width, Height | Velikost oblasti v aktuálních měrných jednotkách |
| Options | 0 = remove + black fill + Redact annotation; 1 = remove only; 2 = remove + Redact annotation (no fill) |
Návratové hodnoty
| >= 0 | Počet odstraněných rozsahů instrukcí napříč všemi obsahovými vrstvami (0 znamená, že se nic neprotínalo) |
|---|