THotPDF.OpenLoadedPageContentStream-Methode

Öffnet den /Contents-Wert der geladenen Seite als einen vom Aufrufer verwalteten schreibgeschützten logischen Stream

Delphi-Deklaration

function OpenLoadedPageContentStream(
  PageIndex: Integer;
  out ContentStream: TStream
): boolean;

C++Builder-Deklaration

bool __fastcall OpenLoadedPageContentStream(
  int PageIndex,
  System::Classes::TStream *&ContentStream
);

Das Ergebnis ist true, wenn die nullbasierte geladene Seite mindestens einen gültigen Content-Stream besitzt

Verhalten

Ein einzelner Content-Stream und ein /Contents-Array nutzen dieselbe Schnittstelle, wobei zwischen benachbarten Segmenten ein Line-Feed-Byte eingefügt wird, damit Tokens nicht über eine Segmentgrenze hinweg verschmelzen

Ungefilterte Segmente bleiben quellgebunden und werden ohne vollständige Materialisierung gelesen, während gefilterte Segmente lazil in einen adaptiven temporären Stream dekodiert werden und das vorherige dekodierte Segment freigegeben wird, sobald die Traversierung sich woandershin bewegt

Die Längen gefilterter Segmente werden erst bei Bedarf ermittelt, sodass das Lesen eines bekannten Präfixes spätere Segmente nicht dekodiert; die Anforderung von Size oder ein Seek vom Ende löst jede verbleibende Länge auf

Der Stream unterstützt wahlfreie Lesezugriffe und Seeking, weist aber Write und SetSize zurück

Besitz

Der Aufrufer muss ContentStream freigeben, und die besitzende THotPDF-Instanz samt geladenem Dokument muss den zurückgegebenen Stream überleben

Verwenden Sie GetLastPageContentSequenceInfo, um Sequenz-Aufwand und Telemetrie zum vorgehaltenen Speicher zu inspizieren