Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
La classe Form fournit la capacité de traiter des AcroForms statiques et vous pouvez obtenir une instance de champ particulière en utilisant la méthode GetFieldFacade(..) de la classe Form. Cependant, les champs XFA ne peuvent pas être accessibles via la méthode Form.GetFieldFacade(..). Au lieu de cela, utilisez Document.Form.XFA pour obtenir/définir les valeurs des champs et manipuler le modèle de champ XFA (définir les propriétés des champs).
Le code suivant fonctionne également avec la bibliothèque Aspose.PDF.Drawing.
Le code suivant vous montre comment remplir des champs dans un formulaire XFA.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void FillXFAFields()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Forms();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "FillXFAFields.pdf"))
{
// Get names of XFA form fields
var names = document.Form.XFA.FieldNames;
// Set field values
if (names.Length > 0)
{
document.Form.XFA[names[0]] = "Field 0";
}
if (names.Length > 1)
{
document.Form.XFA[names[1]] = "Field 1";
}
// Save PDF document
document.Save(dataDir + "FilledXfa_out.pdf");
}
}
Les formulaires dynamiques sont basés sur une spécification XML connue sous le nom de XFA, l’« Architecture des formulaires XML ». Les informations concernant le formulaire (en ce qui concerne un PDF) sont très vagues – elles spécifient que des champs existent, avec des propriétés et des événements JavaScript, mais ne spécifient aucun rendu.
Actuellement, le PDF prend en charge deux méthodes différentes pour intégrer des données et des formulaires PDF :
Nous ne pouvons pas extraire ou manipuler les pages des formulaires XFA, car le contenu du formulaire est généré à l’exécution (lors de la visualisation du formulaire XFA) au sein de l’application essayant d’afficher ou de rendre le formulaire XFA. Aspose.PDF dispose d’une fonctionnalité qui permet aux développeurs de convertir des formulaires XFA en AcroForms standard.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertDynamicXFAToAcroForm()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Forms();
// Load dynamic XFA form
using (var document = new Aspose.Pdf.Document(dataDir + "DynamicXFAToAcroForm.pdf"))
{
// Set the form fields type as standard AcroForm
document.Form.Type = Aspose.Pdf.Forms.FormType.Standard;
// Save PDF document
document.Save(dataDir + "StandardAcroForm_out.pdf");
}
}
Pour accéder aux propriétés des champs, utilisez d’abord Document.Form.XFA.Template pour accéder au modèle de champ. Le code suivant montre les étapes pour obtenir les coordonnées X et Y d’un champ de formulaire XFA.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void GetXFAProperties()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Forms();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "GetXFAProperties.pdf"))
{
// Get names of XFA form fields
var names = document.Form.XFA.FieldNames;
// Set field values
if (names.Length > 0)
{
document.Form.XFA[names[0]] = "Field 0";
}
if (names.Length > 1)
{
document.Form.XFA[names[1]] = "Field 1";
}
// Get field position
if (names.Length > 0)
{
Console.WriteLine(document.Form.XFA.GetFieldTemplate(names[0]).Attributes["x"].Value);
Console.WriteLine(document.Form.XFA.GetFieldTemplate(names[0]).Attributes["y"].Value);
}
// Save PDF document
document.Save(dataDir + "FilledXfa_out.pdf");
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.