Carga escalable y de acceso aleatorio de PDF

HotPDF mantiene los archivos cargados grandes con buena respuesta al retrasar las copias de flujo y el análisis de objetos comprimidos hasta que los datos son necesarios

Ventanas de flujo respaldadas por archivo

Los documentos no cifrados abiertos con LoadFromFile conservan los cuerpos de flujo inmutables como rangos del archivo de origen

Las lecturas se posicionan en el rango requerido y liberan el handle de origen de inmediato, por lo que el archivo original sigue siendo reemplazable en Windows

La primera escritura materializa el flujo en memoria cuando está en o por debajo de LoadedStreamMemoryThreshold, o en un archivo temporal propio cuando es más grande

Flujos de objetos diferidos

Cada contenedor /Type /ObjStm decodificado se indexa por número de objeto xref autoritativo sin analizar cada miembro durante la apertura

El catálogo, 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 respaldado por archivo sin cambios 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 la fuente al analizador con posicionamiento de HotPDF y, de forma opcional, puede ser propietario de la fuente durante toda la vida del documento

Diagnósticos

Véase también: LoadFromRandomAccessSource, LoadedStreamMemoryThreshold, DecompressAllObjectStreams