
Adobe ha introdotto un modulo interattivo e dinamico chiamato moduli XFA. XFA sta per XML Forms Architecture. Il modulo XFA è simile a un file HTML. Contiene campi compilabili e determina il layout o l’aspetto di un modulo incorporato nei documenti PDF. In questo articolo impareremo come compilare e leggere i moduli XFA usando C#.
In questo articolo verranno trattati i seguenti argomenti:
- API C# per leggere e compilare moduli XFA
- Compila i moduli XFA utilizzando C#
- Leggi i moduli XFA usando C#
API C# per leggere e compilare moduli XFA
Per lavorare con i moduli XFA PDF, utilizzeremo l’API Aspose.PDF for .NET. Ci consente di generare, modificare, convertire, eseguire il rendering, proteggere e stampare documenti supportati senza utilizzare Adobe Acrobat. Si prega di scaricare la DLL dell’API o installarla utilizzando NuGet.
PM> Install-Package Aspose.Pdf
Compila i moduli XFA utilizzando C#
Possiamo compilare i moduli XFA in modo programmatico seguendo i passaggi indicati di seguito:
- Innanzitutto, carica un file di modulo XFA utilizzando la classe Document.
- Ottieni i nomi dei campi del modulo XFA caricati.
- Imposta i valori dei campi.
- Infine, chiama il metodo Save(). Prende il percorso del file di output come argomento.
L’esempio di codice seguente mostra come compilare un modulo XFA usando C#.
// Questo esempio di codice mostra come compilare un modulo XFA.
// Carica modulo XFA
Document doc = new Document(@"C:\Files\PDF\FillXFAFields.pdf");
// Ottieni i nomi dei campi modulo XFA
string[] names = doc.Form.XFA.FieldNames;
// Imposta i valori dei campi
doc.Form.XFA[names[0]] = "12345";
doc.Form.XFA[names[1]] = "24/02/2022";
doc.Form.XFA[names[2]] = "Company Name";
doc.Form.XFA[names[3]] = "Company Address";
doc.Form.XFA[names[4]] = "Company City";
doc.Form.XFA[names[5]] = "Canada";
doc.Form.XFA[names[6]] = "Alberta";
doc.Form.XFA[names[7]] = "T9S";
doc.Form.XFA[names[8]] = "+112345567";
doc.Form.XFA[names[10]] = "Mr. John Smith";
doc.Form.XFA[names[11]] = "Delivered to Company Name";
doc.Form.XFA[names[12]] = "Delivery Company Address";
doc.Form.XFA[names[13]] = "Delivery City";
doc.Form.XFA[names[17]] = "+123456789";
doc.Form.XFA[names[19]] = "Mr. Will Smith";
doc.Form.XFA[names[22]] = "57251";
// Salva il modulo
doc.Save(@"C:\Files\PDF\Filled_XFA_out.pdf");

Compila i moduli XFA utilizzando C#.
Leggi i moduli XFA usando C#
Possiamo leggere il modulo XFA compilato seguendo i passaggi indicati di seguito:
- Innanzitutto, carica un file Excel utilizzando la classe Document.
- Ottieni i nomi dei campi modulo XFA caricati.
- In un ciclo, ottieni i dettagli del campo usando il metodo GetFieldTemplate().
- Infine, mostra gli attributi del campo.
L’esempio di codice seguente mostra come leggere il modulo XFA compilato usando C#.
// Questo esempio di codice mostra come leggere un modulo XFA compilato.
// Carica modulo XFA
Document doc = new Document(@"C:\Files\PDF\Filled_XFA_out.pdf");
// Ottieni i nomi dei campi modulo XFA
string[] names = doc.Form.XFA.FieldNames;
for (int count=0; count<names.Length; count++)
{
// Ottieni i dettagli del campo
var field = doc.Form.XFA.GetFieldTemplate(names[count]);
string fieldName = doc.Form.XFA.GetFieldTemplate(names[count]).InnerText;
string fieldValue = doc.Form.XFA[names[count]];
if (!string.IsNullOrEmpty(fieldValue) && fieldValue != "0")
{
Console.WriteLine("Field Name : " + field.Attributes["name"].Value);
Console.WriteLine("Field Description : " + fieldName);
Console.WriteLine("Field Value : " + fieldValue);
Console.WriteLine();
}
}

Leggi il modulo XFA compilato usando C#.
Ottieni una licenza gratuita
Prova l’API senza limitazioni di valutazione richiedendo una licenza temporanea gratuita.
Conclusione
In questo articolo abbiamo imparato come compilare i moduli XFA senza utilizzare Adobe writer. Abbiamo anche visto come leggere il modulo XFA compilato a livello di codice. Inoltre, puoi saperne di più su Aspose.PDF per .NET API usando la documentazione. In caso di ambiguità, non esitare a contattarci sul forum.