Clase THPDFRandomAccessSource
Clase base abstracta que permite a THotPDF.LoadFromRandomAccessSource cargar un PDF desde cualquier almacén de bytes seekable definido por el llamador sin requerir una implementación de TStream
Declaración
THPDFRandomAccessSource = class
public
function GetSize: Int64; virtual; abstract;
function ReadAt(Offset: Int64; var Buffer;
Count: Longint): Longint; virtual; abstract;
end;
Unidad
HPDFDoc
Miembros
| Nombre | Finalidad |
|---|---|
GetSize | Devuelve la longitud de bytes estable del almacén subyacente |
ReadAt | Lee Count bytes comenzando en Offset hacia Buffer |
Notas de uso
- Derive una subclase y reemplace ambos métodos abstractos para adaptar HotPDF a peticiones por rangos HTTP, BLOB de bases de datos, archivos comprimidos, volúmenes cifrados o cualquier almacenamiento virtual que pueda suministrar bytes por desplazamiento
GetSizedebe devolver una longitud de bytes estable y no negativa durante toda la vida útil de la carga; HotPDF analiza las tablas de referencias cruzadas y los flujos de objetos buscando a través de esta fuenteReadAtdevuelve el número de bytes realmente transferidos (de cero aCount); el analizador trata una lectura corta en el final de fichero documentado como fin de flujo, no como un error- La fuente debe seguir siendo válida mientras el documento cargado esté en uso; pase
OwnsSource = Truea LoadFromRandomAccessSource para que HotPDF libere la fuente automáticamente