Attachments
Attachments
Αυτή η σελίδα καλύπτει την ενσωμάτωση αρχείων μέσα σε ένα PDF. Υπάρχουν δύο ξεχωριστοί μηχανισμοί: συνημμένα σε επίπεδο εγγράφου, τα οποία είναι ενσωματωμένα αρχεία χωρίς ορατή παρουσία σε καμία σελίδα, και σημειώσεις συνημμένων αρχείων που είναι αγκιστρωμένες σε σελίδα, οι οποίες τοποθετούν ένα εικονίδιο που μπορεί να γίνει κλικ σε συγκεκριμένη σελίδα.
Συνημμένα Επιπέδου Εγγράφου
Document.AddAttachment() ενσωματώνει bytes κάτω από ένα name, προσθέτοντάς το στο δέντρο ονομάτων ενσωματωμένων αρχείων του εγγράφου — η προσθήκη ξανά με το ίδιο όνομα αντικαθιστά την υπάρχουσα καταχώριση. Επιστρέφει μια Attachment αναφορά. Document.GetAttachments() επιστρέφει κάθε συνημμένο επιπέδου εγγράφου ως έναν πίνακα Attachment αναφορών, ταξινομημένων κατά όνομα, και Document.RemoveAttachment() αφαιρεί ένα με βάση το όνομα.
Η Attachment αναφορά εκθέτει τα Name, Description, MimeType, Size, CreationDate και ModDate ως ιδιότητες, το GetBytes() για ανάγνωση του ακατέργαστου περιεχομένου του ενσωματωμένου αρχείου, και τα GetField() / SetField() / RemoveField() για πρόσβαση χαμηλότερου επιπέδου σε μεμονωμένα πεδία /Filespec. Το προαιρετικό AttachmentOptions που περνιέται στο AddAttachment() δέχεται τα mimeType, description, compress, creationDate και modDate.
Δεν υπάρχει επαληθευμένο παράδειγμα κώδικα για αυτό το API στην τρέχουσα λήψη γνώσης για αυτήν την πλατφόρμα — δείτε τη Σύνοψη API Reference παρακάτω για τις ακριβείς μεθόδους και ονόματα ιδιοτήτων.
Συνημμένα Αρχείων Αγκυρωμένα Σε Σελίδα
Page.AddFileAttachment() ενσωματώνει ένα αρχείο και τοποθετεί μια σημείωση εικονιδίου /FileAttachment σε μια δεδομένη rect σε συγκεκριμένη σελίδα, επιστρέχοντας ένα FileAttachmentAnnotation. Σε αντίθεση με ένα συνημμένο επιπέδου εγγράφου, αυτό είναι ορατό και κλικαρίσιμο σε προβολέα PDF. FileAttachmentAnnotation μοιράζεται τις κοινές ιδιότητες σημειώσεων (Rect, Color, Contents, Name, Flags, Print, Hidden, Opacity) συν τα δικά του Icon και FileName, και υποστηρίζει GetBytes() για ανάγνωση του ενσωματωμένου περιεχομένου και Flatten() για ενσωμάτωση του εικονιδίου του σε στατικό περιεχόμενο σελίδας.
Συμβουλές και Καλές Πρακτικές
- Χρησιμοποιήστε ένα συνημμένο επιπέδου εγγράφου (
Document.AddAttachment()) για ένα αρχείο που πρέπει να μεταφέρεται μαζί με το PDF χωρίς να εμφανίζεται σε καμία σελίδα· χρησιμοποιήστεPage.AddFileAttachment()όταν το αρχείο πρέπει να αντιπροσωπεύεται από ένα κλικαρίσιμο εικονίδιο σε συγκεκριμένη θέση. Document.AddAttachment()αντικαθιστά ένα υπάρχον συνημμένο με το ίδιοname— ελέγξτε τοDocument.GetAttachments()πρώτα αν χρειάζεται να αποφύγετε την αντικατάσταση κατά λάθος.- Διαβάστε το περιεχόμενο ενός συνημμένου με το
GetBytes()σε οποιοδήποτε τύπο χειριστή — η μέθοδος υπάρχει τόσο στοAttachmentόσο και στοFileAttachmentAnnotation.
Συνηθισμένα Προβλήματα
| Πρόβλημα | Αιτία | Διόρθωση |
|---|---|---|
| Ένα νέο προστιθέμενο συνημμένο αντικατέστησε ένα υπάρχον | Document.AddAttachment() κλήθηκε με ένα name που είναι ήδη σε χρήση | Καλέστε πρώτα το Document.GetAttachments() για να ελέγξετε τυχόν σύγκρουση ονομάτων |
| Το συνημμένο δεν έχει ορατό εικονίδιο στη σελίδα | Χρησιμοποιήθηκε το Document.AddAttachment(), το οποίο είναι σε επίπεδο εγγράφου και δεν έχει παρουσία στη σελίδα από προεπιλογή | Χρησιμοποιήστε το Page.AddFileAttachment() αντί για ένα ορατό, αγκυροβολημένο στην σελίδα εικονίδιο |
Document.RemoveAttachment() επιστρέφει false | Δεν υπάρχει συνημμένο με το δεδομένο name στο δέντρο ονομάτων | Επιβεβαιώστε το ακριβές όνομα μέσω του Document.GetAttachments() πριν το αφαιρέσετε |
FAQ
Ποια είναι η διαφορά μεταξύ Document.AddAttachment και Page.AddFileAttachment?
Document.AddAttachment() ενσωματώνει ένα αρχείο σε επίπεδο εγγράφου χωρίς ορατό εικονίδιο σε καμία σελίδα. Page.AddFileAttachment() ενσωματώνει ένα αρχείο και τοποθετεί μια κλικ-δυνατή /FileAttachment εικονίδιο-σημείωση σε συγκεκριμένη θέση σε μία σελίδα.
Πώς μπορώ να καταγράψω κάθε συνημμένο που έχει ήδη ενσωματωθεί σε ένα έγγραφο;
Καλέστε το Document.GetAttachments(), το οποίο επιστρέφει κάθε συνημμένο επιπέδου εγγράφου ως έναν πίνακα από Attachment χειριστές ταξινομημένους κατά όνομα.
Πώς μπορώ να διαβάσω το περιεχόμενο του αρχείου ενός συνημμένου;
Καλέστε το GetBytes() στο χειριστικό Attachment (ή FileAttachmentAnnotation) — είναι διαθέσιμο και στα δύο.
Μπορώ να αφαιρέσω ένα συνημμένο;
Ναι — το Document.RemoveAttachment(name) αφαιρεί ένα συνημμένο επιπέδου εγγράφου κατά όνομα και επιστρέφει αν βρέθηκε και αφαιρέθηκε.
API Reference Σύνοψη
| Κλάση/Μέθοδος | Περιγραφή |
|---|---|
Document.AddAttachment() | Ενσωματώστε τα bytes ως ονομασμένο συνημμένο επιπέδου εγγράφου |
Document.GetAttachments() | Καταγράψτε κάθε συνημμένο σε επίπεδο εγγράφου |
Document.RemoveAttachment() | Αφαιρέστε ένα συνημμένο σε επίπεδο εγγράφου με όνομα |
Attachment | Διαχειριστείτε πάνω από ένα ενσωματωμένο αρχείο; Name, Description, MimeType, Size, GetBytes() |
Page.AddFileAttachment() | Ενσωματώστε ένα αρχείο ως σημείωση εικονιδίου, αγκυροβολημένη στη σελίδα και κλικ-δυνατή |
FileAttachmentAnnotation | Το χειριστήριο σημειώματος του συνημμένου που είναι αγκυροποιημένο στη σελίδα· προσθέτει Icon, FileName |