Skalierbares und wahlfreies PDF-Laden
HotPDF hält große geladene Dateien reaktionsschnell, indem Stream-Kopien und das Parsen komprimierter Objekte verzögert werden, bis die Daten benötigt werden
Dateigestützte Stream-Fenster
Unverschlüsselte Dokumente, die mit LoadFromFile geöffnet wurden, behalten unveränderliche Stream-Körper als Quell-Dateibereiche
Lesezugriffe suchen den erforderlichen Bereich auf und geben das Quell-Handle sofort frei, sodass die ursprüngliche Datei unter Windows weiterhin ersetzbar bleibt
Der erste Schreibvorgang materialisiert den Stream im Speicher, wenn er kleiner oder gleich LoadedStreamMemoryThreshold ist, oder in einer eigenen temporären Datei, wenn er größer ist
Verzögerte Objekt-Streams
Jeder dekodierte /Type /ObjStm-Container wird nach autoritativer Xref-Objektnummer indiziert, ohne jedes Mitglied während des Öffnens zu parsen
Catalog-, Page-Tree- und spätere Link-Auflösungen materialisieren einzelne Mitglieder einmal und verwenden ihre geparsten Objekte wieder
Ein vollständiges Umschreiben materialisiert automatisch jedes verbleibende Mitglied, während ein unverändertes dateigestütztes Speichern die ursprünglichen Bytes direkt bewahren kann
Benutzerdefinierter Wahlfreizugriff
Leiten Sie von THPDFRandomAccessSource ab und implementieren Sie GetSize und ReadAt, um aus HTTP-Ranges, Datenbanken, Archiven oder virtuellem Speicher zu laden
LoadFromRandomAccessSource passt die Quelle an den seek-fähigen Parser von HotPDF an und kann die Quelle optional für die Lebensdauer des Dokuments besitzen
Diagnostik
GetLoadedStreamCacheInfomeldet quellgestützte, speicher-materialisierte und datimaterialisierte Stream-AnzahlenGetLoadedObjectStreamCacheInfomeldet indizierte und materialisierte Mitglieder, Cache-Treffer und -Fehltreffer sowie zurückbehaltene dekodierte Bytes
Siehe auch: LoadFromRandomAccessSource, LoadedStreamMemoryThreshold, DecompressAllObjectStreams