Фасади API
Фасади API
Facades 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, а не само попълване на съществуващите.
Чести проблеми
| Проблем | Причина | Поправка |
|---|---|---|
Save() създава празен файл | BindPdf не е извикан преди запазване | Винаги свързвайте изходен PDF преди да извикате Save |
| Стойността на полето от формуляра не е записана | Името на полето не съвпада с вътрешното име на полето в PDF | Използвайте Form.FieldNames за изброяване на наличните имена на полетата |
| Конкатенацията се проваля без съобщение | Входният файл е криптиран или повреден | Използвайте TryConcatenate и проверете върнатата стойност |
| Подписите са невалидни след редактиране | Съдържанието е променено след подписване | Подпишете документа като последна стъпка |
ЧЗВ
Каква е разликата между фасадите и основния 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 | Изброяване на кодирания на знаци |