function GetAttachmentDictionaryValue(Index: Integer; const Key: WString): TPdfDictionaryValue;
| Index | Integer. Zero-based index του ενσωματωμένου συνημμένου, στο εύρος 0 .. AttachmentCount - 1. Index εκτός εύρους εγείρει EPdfError. |
| Key | WString. Όνομα της εγγραφής προς ανάγνωση από το λεξικό προδιαγραφής αρχείου του συνημμένου, για παράδειγμα ένα προσαρμοσμένο κλειδί που έγραψε η εφαρμογή παραγωγής |
| Result | TPdfDictionaryValue. Το Kind μεταφέρει πάντα τον native τύπο τιμής· για τιμές pdvkString και pdvkName το StringValue γεμίζει και το HasScalarValue είναι True. |
Κάθε εγγραφή του δέντρου EmbeddedFiles είναι ένα λεξικό προδιαγραφής αρχείου PDF, και εκεί ζει η ιδιωτική μεταδεδομένη πληροφορία ενός συνημμένου. Αυτή η κλήση εξετάζει ένα κλειδί αυτού του λεξικού και επιστρέφει ένα TPdfDictionaryValue: το είδος της τιμής αποκωδικοποιείται από το native ερώτημα τύπου, και όταν η εγγραφή κρατά συμβολοσειρά ή name, το κείμενο διαβάζεται και επιστρέφεται στο StringValue με ορισμένο το HasScalarValue
Τιμές άλλων ειδών — numbers, booleans, πίνακες, εμφωλευμένα λεξικά, streams — αναφέρονται μόνο μέσω του Kind· το HasScalarValue μένει False επειδή αποκωδικοποιούνται μόνο εγγραφές string και name. Χρησιμοποιήστε πρώτα το AttachmentHasKey για να ελέγξετε αν ένα κλειδί υπάρχει καθόλου
Η κλήση απαιτεί φορτωμένο έγγραφο και έγκυρο index συνημμένου. Χρησιμοποιήστε το GetAttachmentStringValue όταν το απλό κείμενο μιας εγγραφής string φτάνει και το είδος δεν έχει σημασία, και το SetAttachmentStringValue για να ξαναγράψετε εγγραφή string
Kind κλειδιού που λείπει επιλύεται σε pdvkUnknown· αντιμετωπίστε το μαζί με HasScalarValue = False ως «καμία τιμή»Desc και το DESC είναι διαφορετικές εγγραφές
var
Value: TPdfDictionaryValue;
begin
if Pdf1.AttachmentHasKey(0, 'SourceApp') then
begin
Value := Pdf1.GetAttachmentDictionaryValue(0, 'SourceApp');
if Value.HasScalarValue then
Memo1.Lines.Add('Source: ' + Value.StringValue);
end;
end;