officefileapi-devexpress-dot-pdf-95eeee66.md
Contains a set of properties used to manage text form fields without without access to their inner structure.
Namespace : DevExpress.Pdf
Assembly : DevExpress.Pdf.v25.2.Core.dll
NuGet Package : DevExpress.Pdf.Core
public class PdfTextFormFieldFacade :
PdfFormFieldFacade<PdfTextWidgetFacade, PdfTextFormField>
Public Class PdfTextFormFieldFacade
Inherits PdfFormFieldFacade(Of PdfTextWidgetFacade, PdfTextFormField)
The following members return PdfTextFormFieldFacade objects:
The code sample below divides one form field into equally spaced positions (combs) and enables multiline text in the other form field:
using (PdfDocumentProcessor pdfDocumentProcessor = new PdfDocumentProcessor())
{
pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf");
PdfDocumentFacade documentFacade = pdfDocumentProcessor.DocumentFacade;
PdfAcroFormFacade acroForm = documentFacade.AcroForm;
PdfTextFormFieldFacade visaField = acroForm.GetTextFormField("VisaNo");
//Divide field text into equally spaced positions:
visaField.InputType = PdfTextFieldInputType.Comb;
visaField.Multiline = false;
//Limit the number of inserted characters:
visaField.MaxLength = 8;
//Enable multiline text in the text field:
PdfTextFormFieldFacade addressField = acroForm.GetTextFormField("Address");
addressField.Multiline = true;
addressField.Scrollable = true;
addressField.SpellCheck = false;
}
Using pdfDocumentProcessor As New PdfDocumentProcessor()
pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf")
Dim documentFacade As PdfDocumentFacade = pdfDocumentProcessor.DocumentFacade
Dim acroForm As PdfAcroFormFacade = documentFacade.AcroForm
Dim visaField As PdfTextFormFieldFacade = acroForm.GetTextFormField("VisaNo")
'Divide field text into equally spaced positions:
visaField.InputType = PdfTextFieldInputType.Comb
visaField.Multiline = False
'Limit the number of inserted characters:
visaField.MaxLength = 8
'Enable multiline text in the text field:
Dim addressField As PdfTextFormFieldFacade = acroForm.GetTextFormField("Address")
addressField.Multiline = True
addressField.Scrollable = True
addressField.SpellCheck = False
End Using
A widget annotation contains a form field’s appearance and display properties. One field can be related to multiple widget annotations.
Use the Widgets property to get the form field widgets settings.
The code sample below changes the text form field appearance:
using (PdfDocumentProcessor pdfDocumentProcessor = new PdfDocumentProcessor())
{
pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf");
PdfDocumentFacade documentFacade = pdfDocumentProcessor.DocumentFacade;
PdfAcroFormFacade acroForm = documentFacade.AcroForm;
//Change all text form fields' color settings:
var fields = acroForm.GetFields();
foreach (PdfFormFieldFacade field in fields)
{
if (field.Type == PdfFormFieldType.Text)
{
ChangeFormFieldColor(field);
}
}
}
private static void ChangeFormFieldColor(PdfFormFieldFacade field)
{
foreach (PdfWidgetFacade pdfWidget in field)
{
//Change color and border settings
pdfWidget.BorderWidth = 1;
pdfWidget.BackgroundColor = new PdfRGBColor(0.81, 0.81, 0.81);
pdfWidget.BorderColor = new PdfRGBColor(0.47, 0.44, 0.67);
pdfWidget.FontColor = new PdfRGBColor(0.34, 0.25, 0.36);
//Change border style:
pdfWidget.BorderStyle = PdfBorderStyle.Underline;
}
}
Using pdfDocumentProcessor As New PdfDocumentProcessor()
pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf")
Dim documentFacade As PdfDocumentFacade = pdfDocumentProcessor.DocumentFacade
Dim acroForm As PdfAcroFormFacade = documentFacade.AcroForm
'Change all text form fields' color settings:
Dim fields = acroForm.GetFields()
For Each field As PdfFormFieldFacade In fields
If field.Type = PdfFormFieldType.Text Then
ChangeFormFieldColor(field)
End If
Next field
End Using
private static void ChangeFormFieldColor(PdfFormFieldFacade field)
For Each pdfWidget As PdfWidgetFacade In field
'Change color and border settings
pdfWidget.BorderWidth = 1
pdfWidget.BackgroundColor = New PdfRGBColor(0.81, 0.81, 0.81)
pdfWidget.BorderColor = New PdfRGBColor(0.47, 0.44, 0.67)
pdfWidget.FontColor = New PdfRGBColor(0.34, 0.25, 0.36)
'Change border style:
pdfWidget.BorderStyle = PdfBorderStyle.Underline
Next pdfWidget
Object PdfFormFieldFacade PdfFormFieldFacade<PdfTextWidgetFacade, PdfTextFormField> PdfTextFormFieldFacade
See Also