API Facade
API Facade
L’API Facades fornisce wrapper semplificati e orientati al compito attorno al modello di oggetti core di Aspose.PDF FOSS per .NET. Ogni classe facade mira a una specifica operazione PDF — compilazione di moduli, concatenazione di file, modifica del contenuto o firma digitale — e espone un flusso di lavoro BindPdf / Save.
Compilazione del modulo con la facciata Form
Form (in Aspose.Pdf.Facades) si collega a un PDF esistente e consente di leggere o scrivere i valori dei campi AcroForm senza navigare nell’albero delle pagine.
using var form = new Form("input.pdf", "output.pdf");
form.FillField("FirstName", "Alice");
form.FillField("AcceptTerms", "Yes");
form.Save();Per leggere i valori dei campi:
using var form = new Form("input.pdf");
string name = form.GetField("FirstName");Unire e dividere PDF con PdfFileEditor
PdfFileEditor concatena, divide, estrae e elimina intervalli di pagine.
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");Modifica del contenuto della pagina con PdfContentEditor
PdfContentEditor modifica il contenuto della pagina esistente — aggiungi testo, sostituisci testo o allega azioni alle annotazioni.
var editor = new PdfContentEditor();
editor.BindPdf("input.pdf");
// Perform content edits
editor.Save("output.pdf");Firme digitali con PdfFileSignature
PdfFileSignature firma documenti PDF e verifica le firme esistenti.
var sig = new PdfFileSignature();
sig.BindPdf("document.pdf");
// Sign or verify
sig.Save("signed.pdf");Marcatura della pagina con PdfFileStamp
PdfFileStamp sovrappone testo, immagini o altre pagine PDF come timbri.
var stamp = new PdfFileStamp();
stamp.BindPdf("input.pdf");
// Add stamps
stamp.Save("stamped.pdf");
stamp.Close();Conversione di pagine in immagini con PdfConverter
PdfConverter rende le pagine PDF in formati di immagine raster.
var converter = new PdfConverter();
converter.BindPdf("input.pdf");
converter.DoConvert();
// Iterate pages and save imagesSuggerimenti e migliori pratiche
- Chiama sempre
Close()o usausingper rilasciare le risorse detenute dagli oggetti facade. - Usa
BindPdfcon un percorso file per file di grandi dimensioni per evitare di caricare tutto in memoria contemporaneamente. - Preferisci
TryConcatenateeTryAppendrispetto alle loro controparti non‑Try per una gestione degli errori più elegante. - Le facade delegano internamente al modello core
Document— passa all’API core quando hai bisogno di un controllo più granulare. - La facade
FormEditorconsente di aggiungere nuovi campi modulo a un PDF esistente, non solo di compilare quelli già presenti.
Problemi comuni
| Issue | Cause | Fix |
|---|---|---|
Save() produce file vuoto | BindPdf non è stato chiamato prima del salvataggio | Associa sempre un PDF di origine prima di chiamare Save |
| Il valore del campo modulo non viene scritto | Il nome del campo non corrisponde al nome interno del campo nel PDF | Usa Form.FieldNames per elencare i nomi dei campi disponibili |
| La concatenazione fallisce silenziosamente | Il file di input è crittografato o danneggiato | Usa TryConcatenate e controlla il valore di ritorno |
| Firme non valide dopo la modifica | Il contenuto è stato modificato dopo la firma | Firma il documento come passaggio finale |
Domande frequenti
Qual è la differenza tra Facades e la core Document API?
Le Facade forniscono metodi ad alto livello, orientati al compito (riempire un modulo, unire file).
L’API core (Document, Page, Annotation) offre accesso a livello più basso a ogni oggetto PDF.
Le Facade usano internamente l’API core.
Posso concatenare più operazioni di facciata?
Sì. Associa la stessa origine, esegui le operazioni e salva una sola volta. Oppure salva un risultato intermedio e riassocia per l’operazione successiva.
PdfFileEditor supporta i PDF protetti da password?
Sì. Sono disponibili overload che accettano le password owner/user per i file crittografati.
Riepilogo del Riferimento API
| Classe / Metodo | Descrizione |
|---|---|
Form | Facade AcroForm per la lettura e scrittura dei valori dei campi |
Form.FillField | Imposta il valore di un campo modulo per nome |
Form.GetField | Leggi il valore di un campo modulo per nome |
FormEditor | Aggiungi o modifica i campi modulo in un PDF esistente |
PdfFileEditor | Unisci, dividi, estrai e elimina intervalli di pagine PDF |
PdfFileEditor.Concatenate | Unisci due o più PDF in uno |
PdfFileEditor.Extract | Estrai un intervallo di pagine in un nuovo PDF |
PdfContentEditor | Modifica il contenuto della pagina (testo, annotazioni, azioni) |
PdfFileSignature | Firma e verifica le firme digitali PDF |
PdfFileStamp | Sovrapponi timbri di testo o immagine sulle pagine |
PdfConverter | Renderizza le pagine PDF in immagini raster |
FormattedText | Descrittore di testo formattato per operazioni di timbro |
FontStyle | Enumerazione degli stili di carattere (grassetto, corsivo, ecc.) |
EncodingType | Enumerazione della codifica dei caratteri |