PDFium Delphi Component Docs

TPdfStreamAdapter Klasse

Unit: PDFium
Brücke von einem seekbaren Pascal-TStream zur PDFium-Callback-Struktur FPDF_FILEACCESS

Syntax

constructor Create(AStream: TStream; AOwnsStream: Boolean = False);
constructor Create(AStream: TStream; AFileSize: UInt64; AOwnsStream: Boolean);
destructor Destroy; override;
property Stream: TStream read FStream;
property OwnsStream: Boolean read FOwnsStream;
property FileSize: UInt64 read FFileSize;
property FileAccess: FPDF_FILEACCESS read FFileAccess;

Member

MemberBeschreibung
CreateUmschließt einen seekbaren TStream, liefert optional eine logische Dateigröße, die von der aktuellen Speicherbelegung abweicht, und überträgt optional den Stream-Besitz an den Adapter
DestroyGibt den Adapter-Zustand frei und gibt Stream frei, wenn OwnsStream True ist
StreamDem Konstruktor übergebener zugrunde liegender Stream
OwnsStreamTrue, wenn der Adapter den Stream in Destroy freigeben soll
FileSizeLogische, über FPDF_FILEACCESS offengelegte Größe, einschließlich beim progressiven Laden noch nicht vorhandener Bytes
FileAccessFür FPDF_LoadCustomDocument geeigneter PDFium-Callback-Record

Beschreibung

TPdfStreamAdapter lässt PDFium Byte-Bereiche bei Bedarf aus einem Stream anfordern, statt das gesamte PDF vor dem Laden vollständig in den Speicher zu kopieren

Der Stream muss Seeking unterstützen und muss so lange leben, wie das geladene FPDF_DOCUMENT aus dem Adapter lesen kann

TPdf.LoadCustomDocument verwendet für die High-Level-Komponenten-API denselben Adapter-Pfad

Beispiel

Adapter := TPdfStreamAdapter.Create(FileStream, True);
Document := FPDF_LoadCustomDocument(@Adapter.FileAccess, nil);

Siehe auch

TPdf.LoadCustomDocument