Carga escalable y de acceso aleatorio de PDF
HotPDF mantiene responsivos los archivos cargados grandes retrasando las copias de flujo y el análisis de objetos comprimidos hasta que se necesitan los datos
Ventanas de flujo respaldadas por archivo
Los documentos sin cifrar abiertos con LoadFromFile conservan los cuerpos de flujo inmutables como rangos del archivo de origen
Las lecturas buscan el rango requerido y liberan el manejador de origen inmediatamente, de modo que el archivo original sigue siendo reemplazable en Windows
La primera escritura materializa el flujo en memoria cuando está por debajo o en LoadedStreamMemoryThreshold, o en un archivo temporal propio cuando es mayor
Flujos de objetos diferidos
Cada contenedor /Type /ObjStm decodificado se indexa por número de objeto xref autoritario sin analizar cada miembro durante la apertura
Catalog, el árbol de páginas y la resolución posterior de enlaces materializan miembros individuales una vez y reutilizan sus objetos analizados
Una reescritura completa materializa automáticamente todos los miembros restantes, mientras que un guardado sin cambios respaldado por archivo puede conservar los bytes originales directamente
Acceso aleatorio personalizado
Derive de THPDFRandomAccessSource e implemente GetSize más ReadAt para cargar desde rangos HTTP, bases de datos, archivos o almacenamiento virtual
LoadFromRandomAccessSource adapta el origen al analizador buscable de HotPDF y puede opcionalmente poseer el origen durante el tiempo de vida del documento
Diagnósticos
GetLoadedStreamCacheInfoinforma de los recuentos de flujos respaldados por origen, materializados en memoria y materializados en discoGetLoadedObjectStreamCacheInfoinforma de miembros indexados y materializados, aciertos y fallos de caché, y bytes decodificados retenidos
Véase también: LoadFromRandomAccessSource, LoadedStreamMemoryThreshold, DecompressAllObjectStreams