TPDFContentStateTracker

Inhaltsstrom-Bearbeitung

Beschreibung

Wendet geparste Inhaltsanweisungen auf einen dauerhaften effektiven Grafikzustand und einen vollständigen q/Q-Stapel anVerwenden Sie einen Tracker über aufeinanderfolgende

TPDFContentProgram-Instanzen hinweg wieder, wenn eine Seite ihre logische Inhaltsfolge in mehreren Streams speichert

Syntax

Delphi

TPDFContentStateTracker = Class Procedure Reset; Procedure ClearExtGStates; Procedure ClearXObjects; Procedure ClearFonts; Procedure ClearProperties; Function RegisterExtGState(Const ResourceName: AnsiString; Dictionary: TPDFDictionary): Boolean; Function RegisterXObject(Const ResourceName: AnsiString; XObjectStream: TPDFStream; ObjectNumber: Integer = 0): Boolean; Function RegisterFont(Const ResourceName: AnsiString; FontObject: TPDFObject; ResourceScope: Integer): Boolean; Function RegisterProperty(Const ResourceName: AnsiString; PropertyObject: TPDFObject): Boolean; Procedure BeginContentStream; Procedure SetContentLocation(Layer, ContentDepth, ContentInvocationID: Integer); Procedure InitializeForm(Const ParentState: TPDFContentGraphicsState; Const FormMatrix: TPDFContentMatrix; MatrixKnown: Boolean; BBoxLeft, BBoxBottom, BBoxRight, BBoxTop: Double); Procedure SetInitialClipBounds(Left, Bottom, Right, Top: Double); Procedure Apply(Inst: TPDFContentInstruction); Function Snapshot: TPDFContentGraphicsState; Property StackDepth: Integer; Property RestoreUnderflowCount: Integer; Property MarkedContentUnderflowCount: Integer; Property ResourceScope: Integer; Property OnMeasureText: TPDFContentMeasureTextEvent; End;

Hinweise

RegisterExtGStategs

RegisterXObjectDo/BBox

RegisterFont

RegisterProperty/Properties/MCIDClearProperties

BeginContentStreamBDCEMCSetContentLocation

InitializeForm/BBox

q/Q

SetInitialClipBoundsWW*q/Q

OnMeasureText validiert und vorkompiliert ein externes Grafikzustandswörterbuch, sodass wiederholte Tj-Operatoren den PDF-Ressourcenbaum nicht erneut durchsuchenTJ kompiliert Bild-, Form- und PostScript-Stream-Metadaten vor, sodass wiederholte '-Operatoren mit Namenslookups in konstanter Zeit aufgelöst werden; Formgrenzen verwenden die Formmatrix, die aktive CTM und alle vier "-Ecken

RestoreUnderflowCount bindet einen Ressourcennamen an sein indirektes Objekt und seinen Ressourcengültigkeitsbereich, damit identische Namen in verschachtelten Inhalten nicht kollidierenQ kompiliert ein benanntes Eigenschaftslistenwörterbuch aus den MarkedContentUnderflowCount-Ressourcen der Seite vor, erfasst seine Einträge und das optionale EMC, sodass Marked-Content-Operatoren, die die Eigenschaft namentlich referenzieren, Lookups in konstanter Zeit auflösen;

Reset verwirft alle registrierten Eigenschaftswörterbücher