Attachments

Attachments

Trang này đề cập đến việc nhúng tệp vào trong PDF. Có hai cơ chế riêng biệt: tệp đính kèm ở mức tài liệu, là các tệp được nhúng mà không xuất hiện trên bất kỳ trang nào, và các chú thích tệp đính kèm gắn vào trang, đặt một biểu tượng có thể nhấp vào trên một trang cụ thể.


Tệp Đính Kèm Cấp Tài Liệu

Document.AddAttachment() nhúng bytes dưới một name, thực hiện upsert vào cây tên tệp nhúng của tài liệu — việc thêm lại với cùng tên sẽ ghi đè mục hiện có. Nó trả về một Attachment handle. Document.GetAttachments() trả về mọi tệp đính kèm cấp tài liệu dưới dạng một mảng các Attachment handle, sắp xếp theo tên, và Document.RemoveAttachment() xóa một tệp theo tên.

Handle Attachment cung cấp Name, Description, MimeType, Size, CreationDate và ModDate như các thuộc tính, GetBytes() để đọc lại nội dung thô của tệp nhúng, và GetField() / SetField() / RemoveField() để truy cập cấp thấp hơn vào các trường /Filespec riêng lẻ. Tham số tùy chọn AttachmentOptions được truyền cho AddAttachment() chấp nhận mimeType, description, compress, creationDate và modDate.

Không có ví dụ mã đã được xác minh nào cho API này trong bản snapshot kiến thức hiện tại cho nền tảng này — xem Tóm tắt API Reference bên dưới để biết phương pháp và tên thuộc tính chính xác.


Tệp Đính Kèm Gắn Vào Trang

Page.AddFileAttachment() nhúng một tệp và đặt một chú thích biểu tượng /FileAttachment tại một rect cho trước trên một trang cụ thể, trả về một FileAttachmentAnnotation. Không giống như tệp đính kèm cấp tài liệu, tệp này hiển thị và có thể nhấp chuột trong trình xem PDF. FileAttachmentAnnotation chia sẻ các thuộc tính chú thích chung (Rect, Color, Contents, Name, Flags, Print, Hidden, Opacity) cùng với Icon và FileName riêng của nó, và hỗ trợ GetBytes() để đọc nội dung nhúng và Flatten() để nhúng biểu tượng của nó vào nội dung trang tĩnh.


Mẹo và Thực hành tốt nhất

  • Sử dụng tệp đính kèm cấp tài liệu (Document.AddAttachment()) cho một tệp cần đi kèm với PDF mà không xuất hiện trên bất kỳ trang nào; sử dụng Page.AddFileAttachment() khi tệp cần được đại diện bằng một biểu tượng có thể nhấp chuột tại một vị trí cụ thể.
  • Document.AddAttachment() ghi đè lên tệp đính kèm hiện có có cùng name — hãy kiểm tra Document.GetAttachments() trước nếu bạn cần tránh việc thay thế một cách không cố ý.
  • Đọc lại nội dung của tệp đính kèm bằng GetBytes() trên bất kỳ loại handle nào — phương thức này tồn tại trên cả Attachment và FileAttachmentAnnotation.

Các vấn đề thường gặp

Vấn đềNguyên nhânCách khắc phục
Một tệp đính kèm mới được thêm đã thay thế tệp đã tồn tạiDocument.AddAttachment() đã được gọi với một name đã được sử dụngGọi Document.GetAttachments() trước để kiểm tra trùng tên
Tệp đính kèm không có biểu tượng hiển thị trên trangDocument.AddAttachment() đã được sử dụng, đây là cấp độ tài liệu và theo thiết kế không có mặt trên trangSử dụng Page.AddFileAttachment() thay cho một biểu tượng có thể nhìn thấy, được neo vào trang
Document.RemoveAttachment() trả về falseKhông có tệp đính kèm nào với name đã cho tồn tại trong cây tênXác nhận tên chính xác qua Document.GetAttachments() trước khi xóa

FAQ

Sự khác biệt giữa Document.AddAttachment và Page.AddFileAttachment là gì?

Document.AddAttachment() nhúng một tệp ở mức độ tài liệu mà không có biểu tượng nào hiển thị trên bất kỳ trang nào. Page.AddFileAttachment() nhúng một tệp và đặt một chú thích biểu tượng /FileAttachment có thể nhấp được tại một vị trí cụ thể trên một trang.

Làm thế nào để tôi liệt kê mọi tệp đính kèm đã được nhúng trong tài liệu?

Gọi Document.GetAttachments(), hàm này trả về mọi tệp đính kèm ở mức độ tài liệu dưới dạng một mảng các handle Attachment được sắp xếp theo tên.

Làm thế nào để tôi đọc lại nội dung tệp của tệp đính kèm?

Gọi GetBytes() trên handle Attachment (hoặc FileAttachmentAnnotation) — nó có sẵn cho cả hai.

Tôi có thể xóa một tệp đính kèm không?

Có — Document.RemoveAttachment(name) xóa một tệp đính kèm ở mức độ tài liệu theo tên và trả về liệu có tệp nào được tìm thấy và xóa không.


API Reference Tóm tắt

Lớp/Phương thứcMô tả
Document.AddAttachment()Nhúng các byte dưới dạng tệp đính kèm có tên, ở cấp độ tài liệu
Document.GetAttachments()Liệt kê tất cả các tệp đính kèm cấp tài liệu
Document.RemoveAttachment()Xóa tệp đính kèm cấp tài liệu theo tên
AttachmentXử lý hơn một tệp nhúng; Name, Description, MimeType, Size, GetBytes()
Page.AddFileAttachment()Nhúng một tệp dưới dạng chú thích biểu tượng có thể nhấp và gắn vào trang
FileAttachmentAnnotationTrình xử lý chú thích của tệp đính kèm gắn vào trang; thêm Icon, FileName

Xem thêm

 Tiếng Việt