Metoda THPDFRandomAccessSource.ReadAt
Odczytuje Count bajtów począwszy od dostarczonego Offset liczonego od zera do Buffer
Deklaracja
function ReadAt(Offset: Int64; var Buffer;
Count: Longint): Longint; virtual; abstract;
Jednostka
HPDFDoc
Parametry
| Nazwa | Przeznaczenie |
|---|---|
Offset | Przesunięcie w bajtach liczony od zera, od którego rozpocząć odczyt; musi mieścić się w zakresie zgłoszonym przez GetSize |
Buffer | Bufor var bez typu odbierający bajty; wywołujący gwarantuje, że pomieści co najmniej Count bajtów |
Count | Maksymalna liczba bajtów do przesłania |
Wartość zwracana
Liczba faktycznie przesłanych bajtów, od zera do Count. Skrócony odczyt na udokumentowanym końcu pliku jest traktowany jako koniec strumienia, a nie jako błąd
Uwagi dotyczące użycia
- Przesłoń tę metodę w podklasie, aby pobierać bajty na żądanie z magazynu zapasowego (żądanie zakresłowe HTTP,
SELECT ... OFFSETbazy danych, fragment członka archiwum, mapowanie woluminu wirtualnego) - HotPDF przemieszcza się przez tabele odsyłaczy krzyżowych i strumienie obiektów, wywołując
ReadAtprzy przesunięciach bezwzględnych, więc implementacja musi obsłużyć dowolneOffsetaż doGetSize - 1 - Zwrócenie więcej niż
Countbajtów jest naruszeniem kontraktu; zwróć dokładnie bajty dostępne doCount