API фасадів
Facades API
API фасадів надає спрощені, орієнтовані на завдання обгортки навколо ядра Aspose.PDF FOSS for .NET об’єктної моделі. Кожен клас фасаду орієнтований на конкретну операцію з PDF — заповнення форм, об’єднання файлів, редагування вмісту або цифровий підпис — і відкриває робочий процес BindPdf / Save.
Заповнення форми за допомогою фасаду Form
Form (у Aspose.Pdf.Facades) прив’язується до існуючого PDF і дозволяє читати або записувати значення полів AcroForm без навігації по дереву сторінок.
using var form = new Form("input.pdf", "output.pdf");
form.FillField("FirstName", "Alice");
form.FillField("AcceptTerms", "Yes");
form.Save();Щоб прочитати значення полів:
using var form = new Form("input.pdf");
string name = form.GetField("FirstName");Об’єднання та розділення PDF‑файлів за допомогою PdfFileEditor
PdfFileEditor об’єднує, розділяє, видобуває та видаляє діапазони сторінок.
var editor = new PdfFileEditor();
// Concatenate two files
editor.Concatenate("file1.pdf", "file2.pdf", "merged.pdf");
// Extract pages 2-5
editor.Extract("source.pdf", 2, 5, "pages2to5.pdf");
// Split at page 3
editor.SplitFromFirst("source.pdf", 3, "first3.pdf");Редагування вмісту сторінки за допомогою PdfContentEditor
PdfContentEditor модифікує існуючий вміст сторінки — додає текст, замінює текст або додає дії до анотацій.
var editor = new PdfContentEditor();
editor.BindPdf("input.pdf");
// Perform content edits
editor.Save("output.pdf");Цифрові підписи за допомогою PdfFileSignature
PdfFileSignature підписує PDF‑документи та перевіряє існуючі підписи.
var sig = new PdfFileSignature();
sig.BindPdf("document.pdf");
// Sign or verify
sig.Save("signed.pdf");Нанесення штампу на сторінку за допомогою PdfFileStamp
PdfFileStamp накладає текст, зображення або інші сторінки PDF як штампи.
var stamp = new PdfFileStamp();
stamp.BindPdf("input.pdf");
// Add stamps
stamp.Save("stamped.pdf");
stamp.Close();Перетворення сторінок у зображення за допомогою PdfConverter
PdfConverter перетворює сторінки PDF у растрові формати зображень.
var converter = new PdfConverter();
converter.BindPdf("input.pdf");
converter.DoConvert();
// Iterate pages and save imagesПоради та найкращі практики
- Завжди викликайте
Close()або використовуйтеusingдля звільнення ресурсів, які утримуються об’єктами фасаду. - Використовуйте
BindPdfз шляхом до файлу для великих файлів, щоб уникнути завантаження всього в пам’ять одночасно. - Віддавайте перевагу
TryConcatenateтаTryAppendзамість їхніх аналогів без Try для плавної обробки помилок. - Фасади делегують внутрішньо ядровій моделі
Document— переходьте до ядрового API, коли потрібен детальний контроль. - Фасад
FormEditorдозволяє додавати нові поля форми до існуючого PDF, а не лише заповнювати вже наявні.
Загальні проблеми
| Issue | Cause | Fix |
|---|---|---|
Save() створює порожній файл | BindPdf не був викликаний перед збереженням | Завжди прив’язуйте вихідний PDF перед викликом Save |
| Значення поля форми не записано | Ім’я поля не відповідає внутрішньому імені поля PDF | Використайте Form.FieldNames для отримання списку доступних імен полів |
| Конкатенація завершується без повідомлення про помилку | Вхідний файл зашифрований або пошкоджений | Використайте TryConcatenate і перевірте повернене значення |
| Підписи недійсні після редагування | Вміст був змінений після підпису | Підписуйте документ як останній крок |
Часті питання
У чому різниця між Facades та core Document API?
Фасади надають високорівневі, орієнтовані на завдання методи (заповнення форми, об’єднання файлів).
Основний API (Document, Page, Annotation) надає низькорівневий доступ до
кожного PDF‑об’єкта. Фасади використовують основний API внутрішньо.
Чи можу я ланцюжити кілька операцій фасаду?
Так. Прив’яжіть те саме джерело, виконайте операції та збережіть один раз. Або збережіть проміжний результат і повторно прив’яжіть для наступної операції.
Чи підтримує PdfFileEditor PDF‑файли, захищені паролем?
Так. Перевантаження, які приймають паролі власника/користувача, доступні для зашифрованих файлів.
Зведення довідки API
| Class / Method | Description |
|---|---|
Form | AcroForm фасад для читання та запису значень полів |
Form.FillField | Встановити значення поля форми за назвою |
Form.GetField | Прочитати значення поля форми за назвою |
FormEditor | Додати або змінити поля форми у існуючому PDF |
PdfFileEditor | Об’єднувати, розділяти, витягувати та видаляти діапазони сторінок PDF |
PdfFileEditor.Concatenate | Об’єднати два або більше PDF у один |
PdfFileEditor.Extract | Витягнути діапазон сторінок у новий PDF |
PdfContentEditor | Змінити вміст сторінки (текст, анотації, дії) |
PdfFileSignature | Підписати та перевірити цифрові підписи PDF |
PdfFileStamp | Накласти текстові або графічні штампи на сторінки |
PdfConverter | Рендерити сторінки PDF у растрові зображення |
FormattedText | Описувач стилізованого тексту для операцій штампування |
FontStyle | Перелік стилів шрифтів (жирний, курсив тощо) |
EncodingType | Перелік кодувань символів |