THotPDF.ApplyLoadedRedactions
Wendet geladene Redact-Anmerkungen auf jede Zeichenkategorie an und entfernt dabei überschneidende Text-Bytes
Delphi-Syntax
function ApplyLoadedRedactions( const PageRange: AnsiString= ''): Integer;
Beschreibung
Die Methode sammelt die /Subtype /Redact-Anmerkungsrechtecke jeder ausgewählten Seite, normalisiert ihre Koordinaten und führt überschneidende Rechtecke konservativ zusammen
Ein äußeres Seitenrechteck und die zusammengeführten Schwärzungsrechtecke bilden einen Even-Odd-Clipping-Pfad um den kompletten ursprünglichen Seiteninhalt. Der Clip betrifft daher Text, gestrichene und gefüllte Pfade, Bilder, Pattern-Füllungen, Inline-Bilder und Form XObjects an exakten Rechteckgrenzen, statt einen ganzen Zeichenoperator zu verwerfen
Der Clipping-Graphics-State beginnt vor dem ersten Seiten-Content-Stream und wird nach dem letzten Stream wiederhergestellt, wodurch die normale State-Kontinuität über ein /Contents-Array hinweg erhalten bleibt. Opake schwarze Overlays werden erst nach dieser Wiederherstellung gezeichnet
Überschneidende direkte String-Operanden und einzelne TJ-String-Elemente werden in ihren ursprünglichen dekodierten Streams durch Leerzeichen ersetzt. Für die Überschneidungsprüfung dienen Glyphen-Vierecke, mit einem konservativen Fallback auf den Textursprung, wenn exakte Geometrie nicht verfügbar ist
Der Rückgabewert ist die Zahl der geleerten direkten String-Operanden und TJ-Elemente. Eine Null kann trotzdem bedeuten, dass Nicht-Text-Grafiken der Seite erfolgreich geclippt wurden
PageRange verwendet einsbasierte Seitennummern und Bereiche. Ein leerer Wert verarbeitet jede Seite
Siehe auch Erkennung von Schwärzungen mit vorheriger Prüfung, RedactLoadedRect und AddRedactAnnotation