Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Класс Form предоставляет возможность работать со статическими AcroForm, и вы можете получить конкретный экземпляр поля, используя метод Form class’ GetFieldFacade(..). Однако доступ к полям XFA невозможен через метод Form.GetFieldFacade(..). Вместо этого используйте Document.Form.XFA для получения/установки значений полей и управления шаблоном полей XFA (установка свойств полей).
Следующий фрагмент кода также работает с библиотекой Aspose.PDF.Drawing.
В следующем фрагменте кода показано, как заполнять поля в форме 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");
}
}
Динамические формы основаны на XML-спецификации, известной как XFA (Архитектура XML-форм). Информация о форме (что касается PDF) очень расплывчата — она указывает на то, что поля существуют со свойствами и событиями JavaScript, но не определяет никакого рендеринга.
В настоящее время PDF поддерживает два различных метода интеграции данных и PDF-форм:
Мы не можем извлекать или управлять страницами форм XFA, поскольку содержимое формы генерируется во время выполнения (во время просмотра формы XFA) в приложении, пытающемся отобразить или отрисовать форму XFA. В Aspose.PDF есть функция, которая позволяет разработчикам преобразовывать формы XFA в стандартные формы AcroForms.
// 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");
}
}
Чтобы получить доступ к свойствам поля, сначала используйте Document.Form.XFA.Template для доступа к шаблону поля. Следующий фрагмент кода показывает шаги получения координат X и Y поля формы 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.