Cách làm việc với tệp đính kèm PDF trong TypeScript

Cách làm việc với tệp đính kèm PDF trong TypeScript

Hướng dẫn này cho thấy cách làm việc với tệp đính kèm trong tài liệu PDF bằng Aspose.PDF FOSS cho TypeScript. Document.AddAttachment() nhúng một tệp ở cấp độ tài liệu; Page.AddFileAttachment() đặt một chú thích dạng kẹp giấy có thể nhấp vào trên trang để mở tệp đã nhúng. Yêu cầu Node.js 22 trở lên.

Hướng dẫn từng bước

Bước 1: Cài đặt gói

git clone https://github.com/aspose-pdf-foss/Aspose.PDF-FOSS-for-TypeScript.git
cd Aspose.PDF-FOSS-for-TypeScript
npm install
npm run build

Xác minh việc cài đặt bằng cách nhập lớp Document trong một tệp TypeScript mới — dòng này sẽ được giải quyết mà không có lỗi sau khi gói đã được cài đặt:

import { Document } from '@asposefoss/pdf';

Bước 2: Nhập các lớp cần thiết

Nhập Document để mở tệp và truy cập cả hai điểm nhập đính kèm được sử dụng bên dưới:

import { Document } from '@asposefoss/pdf';

Bước 3: Mở tài liệu mục tiêu

Cả hai phương pháp đính kèm đều được gọi trên một Document đang mở — các đính kèm cấp Page còn cần Page mục tiêu:

const doc = Document.OpenFile('input.pdf');
const page = doc.Pages[0];

Bước 4: Nhúng một đính kèm cấp tài liệu

Document.AddAttachment(name, bytes, opts) -> Attachment nhúng một tệp vào bộ sưu tập các tệp nhúng của tài liệu, được đánh dấu bằng name. Document.GetAttachments() -> Attachment[] liệt kê mọi thứ hiện đang được nhúng, và Document.RemoveAttachment(name) -> boolean xóa một tệp theo tên.


Bước 5: Thêm chú thích đính kèm tệp cấp trang

Page.AddFileAttachment(opts) -> FileAttachmentAnnotation đặt một biểu tượng có thể nhấp vào trên trang — tương tự như các chú thích dạng ghi chú dán và văn bản tự do được đề cập trong Chú thích hướng dẫn — mà người xem mở để lưu hoặc xem trước tệp được nhúng. Không giống như Document.AddAttachment(), nó được gắn vào vị trí cụ thể trên trang thay vì chỉ được liệt kê trong bộ sưu tập embedded-files của tài liệu.

Các vấn đề thường gặp và cách khắc phục

Một tệp đính kèm được thêm bằng Document.AddAttachment() không có biểu tượng hiển thị trên bất kỳ trang nào. Điều này là bình thường — một tệp đính kèm ở mức tài liệu tồn tại trong bộ sưu tập embedded-files, không phải trên trang. Sử dụng Page.AddFileAttachment() thêm nữa nếu cần một biểu tượng có thể nhấp vào trên một trang cụ thể.

Document.RemoveAttachment() returns false. Nó trả về false khi không có tệp đính kèm nào được đăng ký dưới tên đã cho name — liệt kê tập hiện tại bằng Document.GetAttachments() đầu tiên để xác nhận tên chính xác đang được sử dụng.

Hai tệp đính kèm đã được nhúng dưới cùng một name. name in Document.AddAttachment() là khóa được sử dụng để tra lại tệp đính kèm bằng RemoveAttachment() — việc tái sử dụng một tên cho lần gọi thứ hai có thể che khuất hoặc gây xung đột với lần đầu, tùy thuộc vào cách trình xem giải quyết các bản sao. Hãy sử dụng một tên riêng biệt cho mỗi tệp được nhúng.

Câu hỏi thường gặp

Sự khác biệt giữa tệp đính kèm cấp tài liệu và tệp đính kèm cấp trang là gì?

Một tệp đính kèm cấp tài liệu (Document.AddAttachment()) tồn tại trong bộ sưu tập embedded-files của PDF và không được gắn vào bất kỳ trang nào. Một tệp đính kèm cấp trang (Page.AddFileAttachment()) là một chú thích được neo vào vị trí cụ thể trên trang, tương tự như một ghi chú dán.

Làm thế nào để tôi xem những gì hiện đang được nhúng trong tài liệu?

Gọi Document.GetAttachments(), nó trả về mọi Attachment hiện đang được nhúng.

Có thể gỡ bỏ một tệp đính kèm sau khi nó đã được thêm vào không?

Có — Document.RemoveAttachment(name) xóa một tệp đính kèm cấp tài liệu dựa trên tên mà nó đã được thêm vào, và trả về true nếu nó tìm thấy và xóa được một tệp.

Xem thêm

 Tiếng Việt