THotPDF.LoadFromRandomAccessSource
Φορτώνει ένα PDF μέσω μιας seekable πηγής byte που ορίζει ο καλών χωρίς να απαιτείται υλοποίηση TStream
Δηλώσεις
THPDFRandomAccessSource = class
public
function GetSize: Int64; virtual; abstract;
function ReadAt(Offset: Int64; var Buffer;
Count: Longint): Longint; virtual; abstract;
end;
function LoadFromRandomAccessSource(
Source: THPDFRandomAccessSource;
OwnsSource: Boolean = False): Integer; overload;
function LoadFromRandomAccessSource(
Source: THPDFRandomAccessSource;
const Password: AnsiString;
OwnsSource: Boolean = False): Integer; overload;
Σύμβαση
- Το
GetSizeεπιστρέφει το σταθερό μήκος byte και δεν πρέπει να επιστρέφει αρνητική τιμή - Το
ReadAtδιαβάζει στο παρεχόμενο μηδενικής βάσης offset και επιστρέφει μια μέτρηση από μηδέν έως τη ζητούμενη μέτρηση - Το HotPDF περικλείει αυτόματα συνηθισμένες πηγές σε συνενωτή περιοχών 256 KiB με περιορισμένη κρυφή μνήμη 2 MiB και ασύγχρονη προφόρτωση που αναγνωρίζει ακύρωση
- Η παροχή υπάρχοντος
THPDFCoalescingRandomAccessSourceδιατηρεί τις ρυθμίσεις μπλοκ, κρυφής μνήμης, κυριότητας και προφόρτωσης που επέλεξε ο καλών - Υπερκαλύψτε το
ReadAtCancellableόταν η μεταφορά υποστήριξης μπορεί να διακόψει αίτημα σε εξέλιξη· η προεπιλεγμένη υλοποίησή του παραμένει συμβατή με υπάρχουσες υποκλάσεις που διαθέτουν μόνοReadAt - Η πηγή πρέπει να παραμένει έγκυρη όσο το φορτωμένο έγγραφο βρίσκεται σε χρήση εκτός αν το
OwnsSourceείναιTrue - Με ενεργοποιημένη κυριότητα, το HotPDF απελευθερώνει την πηγή όταν φορτωθεί άλλη πηγή, όταν η φόρτωση αποτύχει ή όταν το στοιχείο καταστραφεί
- Η υπερφόρτωση κωδικού διαβάζει αρχικά περιορισμένες περιοχές trailer και cross-reference, έπειτα ανακτά το λεξικό κρυπτογράφησης από την έγκυρη μετατόπιση αντικειμένου του, ώστε η φόρτωση κωδικού RC4 και AES να μη χρειάζεται πλήρες αίτημα πηγής σε έγκυρα αρχεία
- Η φόρτωση χωρίς κωδικό καταγράφει το περιορισμένο ακατέργαστο αντικείμενο κρυπτογράφησης και το πρώτο trailer ID όσο η πηγή είναι διαθέσιμη· μεταγενέστερη κλήση
DecryptLoadedDocumentχρησιμοποιεί τις ακριβείς δυαδικές τιμέςO,U,OEκαιUEχωρίς να ξαναδιαβάσει την πηγή - Αν η περιορισμένη ανάκτηση κλειδιού δεν μπορεί να καθορίσει υποστηριζόμενο κλειδί, το HotPDF διατηρεί την εφεδρεία συμβατότητας πλήρους πηγής
Το αποτέλεσμα είναι ο αριθμός φορτωμένων σελίδων, που ταιριάζει με τα LoadFromFile και LoadFromStream. Η περιορισμένη ανάκτηση κλειδιού κωδικού είναι διαθέσιμη από το HotPDF v2.489.0, η καθυστερημένη αποκρυπτογράφηση χωρίς επανάληψη ανάγνωσης από το HotPDF v2.490.0 και η αυτόματη συνένωση περιοχών από το HotPDF v2.524.0
Δείτε επίσης: Κλιμακώσιμη φόρτωση, THPDFCoalescingRandomAccessSource, LoadFromStream