THPDFRandomAccessSource.TransferAt Method
Αντιγράφει bytes από το Offset σε stream προορισμού σε chunks των 64 KB και επιστρέφει το πλήθος των bytes που μεταφέρθηκαν
Δήλωση
function TransferAt(Offset, Count: Int64;
Destination: TStream): Int64; virtual;
Μονάδα
HPDFDoc
Παράμετροι
| Όνομα | Σκοπός |
|---|---|
Offset | Offset byte με βάση το μηδέν από όπου ξεκινά η ανάγνωση |
Count | Πλήθος bytes προς μεταφορά, περικομμένο στα bytes που απομένουν μετά το Offset |
Destination | Stream που λαμβάνει τα αντιγραμμένα bytes, δεν πρέπει να είναι nil |
Τιμή επιστροφής
Πλήθος bytes που πράγματι γράφτηκαν στο Destination, μηδέν όταν το Offset είναι αρνητικό, το Count δεν είναι θετικό ή το Offset βρίσκεται στο ή πέρα από το μέγεθος της πηγής
Σημειώσεις χρήσης
- Εκτοξεύει
EArgumentNilExceptionόταν τοDestinationείναι nil καιEStreamErrorόταν η υποκείμενηReadAtαναφέρει άκυρο πλήθος chunk - Ο βρόχος αντιγραφής σταματά νωρίς όταν η
ReadAtεπιστρέφει μηδέν bytes, οπότε οι κοντές πηγές μεταφέρουν μόνο ό,τι υπάρχει - Κάντε override σε παράγωγες πηγές για να κάνετε stream cached ή δικτυακά στηριζόμενα δεδομένα χωρίς ενδιάμεσο staging σε buffer