Як працювати з PDF-вкладеннями у TypeScript
У цьому посібнику показано, як працювати з файловими вкладеннями у PDF-документах за допомогою Aspose.PDF FOSS для TypeScript. Document.AddAttachment() вбудовує файл на рівні документа; Page.AddFileAttachment() розміщує клікабельну анотацію у вигляді скріпки на сторінці, яка відкриває вбудований файл. Потрібен Node.js 22 або новіший.
Покроковий посібник
Крок 1: Встановити пакет
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Перевірте встановлення, імпортуючи клас Document у новий файл TypeScript — цей рядок має успішно компілюватися без помилок після встановлення пакета:
import { Document } from '@asposefoss/pdf';Крок 2: Імпорт необхідних класів
Імпортуйте Document, щоб відкрити файл і отримати доступ до обох точок входу вкладень, використаних нижче:
import { Document } from '@asposefoss/pdf';Крок 3: Відкрити цільовий документ
Обидва методи вкладень викликаються на відкритому Document — вкладення рівня Page додатково потребують цільового Page:
const doc = Document.OpenFile('input.pdf');
const page = doc.Pages[0];Крок 4: Вбудувати вкладення рівня документа
Document.AddAttachment(name, bytes, opts) -> Attachment вбудовує файл у колекцію вбудованих файлів документа, індексовану за допомогою name. Document.GetAttachments() -> Attachment[] перераховує все, що наразі вбудовано, а Document.RemoveAttachment(name) -> boolean видаляє файл за назвою.
Крок 5: Додати анотацію вкладення файлу рівня сторінки
Page.AddFileAttachment(opts) -> FileAttachmentAnnotation розміщує клікабельну іконку на сторінці — подібно до нотаток-стикерів та вільнотекстових анотацій, описаних у Анотації керівнику — який переглядач відкриває для збереження або попереднього перегляду вбудованого файлу. На відміну від Document.AddAttachment(), вона закріплена в конкретному місці сторінки, а не лише перелічена у колекції embedded-files документа.
Поширені проблеми та виправлення
Вкладення, додане за допомогою Document.AddAttachment() не має видимої іконки на жодній сторінці. Це очікувано — вкладення рівня документа знаходиться в колекції embedded-files, а не на сторінці. Використайте Page.AddFileAttachment() додатково, якщо потрібна клікабельна іконка на конкретній сторінці.
Document.RemoveAttachment() returns false. Повертає false коли під вказаним не зареєстровано жодного вкладення name — перелічіть поточний набір за допомогою Document.GetAttachments() спочатку, щоб підтвердити точну назву, що використовується.
Два вкладення були вбудовані під однаковим name. name in Document.AddAttachment() — це ключ, який використовується для пошуку вкладення RemoveAttachment() — повторне використання імені для другого виклику може затінити або конфліктувати з першим, залежно від того, як переглядач обробляє дублікати. Використовуйте унікальне ім’я для кожного вбудованого файлу.
Поширені запитання
У чому різниця між вкладенням рівня документа та вкладенням рівня сторінки?
Вкладення рівня документа (Document.AddAttachment()) знаходиться у колекції embedded-files PDF і не прив’язане до жодної сторінки. Вкладення рівня сторінки (Page.AddFileAttachment()) — це анотація, закріплена в певному місці сторінки, схожа на нотатку-стікер.
Як переглянути, що зараз вбудовано в документ?
Викличте Document.GetAttachments(), який повертає всі поточні вбудовані Attachment.
Чи можна видалити вкладення після його додавання?
Так — Document.RemoveAttachment(name) видаляє вкладення рівня документа за назвою, під якою воно було додано, і повертає true, якщо воно було знайдено та видалено.