Método THPDFRandomAccessSource.ReadAt
Lê Count bytes a partir do Offset baseado em zero fornecido para Buffer
Declaração
function ReadAt(Offset: Int64; var Buffer;
Count: Longint): Longint; virtual; abstract;
Unit
HPDFDoc
Parâmetros
| Nome | Objetivo |
|---|---|
Offset | Desvio de bytes baseado em zero onde começar a ler; tem de estar dentro do intervalo reportado por GetSize |
Buffer | Buffer var sem tipo que recebe os bytes; o chamador garante que pode conter pelo menos Count bytes |
Count | Número máximo de bytes a transferir |
Valor devolvido
O número de bytes efetivamente transferidos, de zero até Count. Uma leitura curta no fim de ficheiro documentado é tratada como fim de fluxo, não como erro
Notas de utilização
- Redefina este método numa subclasse para obter bytes a pedido a partir do seu armazenamento de suporte (pedido de intervalo HTTP,
SELECT ... OFFSETde base de dados, fatia de membro de arquivo, mapeamento de volume virtual) - O HotPDF procura através das tabelas de referência cruzada e dos fluxos de objetos chamando
ReadAtem desvios absolutos, pelo que a implementação tem de honrar qualquerOffsetatéGetSize - 1 - Devolver mais do que
Countbytes é uma violação de contrato; devolva exatamente os bytes disponíveis atéCount