officefileapi-devexpress-dot-pdf-5a5917ff.md
Contains a set of properties used to manage button form fields without access to their inner structure.
Namespace : DevExpress.Pdf
Assembly : DevExpress.Pdf.v25.2.Core.dll
NuGet Package : DevExpress.Pdf.Core
public class PdfButtonFormFieldFacade :
PdfFormFieldFacade<PdfButtonWidgetFacade, PdfButtonFormField>
Public Class PdfButtonFormFieldFacade
Inherits PdfFormFieldFacade(Of PdfButtonWidgetFacade, PdfButtonFormField)
The following members return PdfButtonFormFieldFacade objects:
Note
PDF Document API does not ship with API to create push button fields. You can only retrieve the existing push button fields and change their properties.
Use the Widgets property to get options of each widget annotation associated with the button form field. The PdfButtonWidgetFacade class properties allow you to change the border and background color, specify an alternate caption, and more.
The code sample below changes the button form field appearance:
using (PdfDocumentProcessor pdfDocumentProcessor = new PdfDocumentProcessor())
{
pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf");
PdfDocumentFacade documentFacade = pdfDocumentProcessor.DocumentFacade;
PdfAcroFormFacade acroForm = documentFacade.AcroForm;
//Obtain button form field parameters:
PdfButtonFormFieldFacade pushButton = acroForm.GetButtonFormField("Submit");
//Retrieve form field widget:
PdfButtonWidgetFacade buttonWidget = pushButton.Widgets[0];
//Change widget's color options:
buttonWidget.BorderWidth = 1;
buttonWidget.BackgroundColor = new PdfRGBColor(0.81, 0.81, 0.81);
buttonWidget.BorderColor = new PdfRGBColor(0.47, 0.44, 0.67);
buttonWidget.FontColor = new PdfRGBColor(0.34, 0.25, 0.36);
}
Using pdfDocumentProcessor As New PdfDocumentProcessor()
pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf")
Dim documentFacade As PdfDocumentFacade = pdfDocumentProcessor.DocumentFacade
Dim acroForm As PdfAcroFormFacade = documentFacade.AcroForm
'Obtain button form field parameters:
Dim pushButton As PdfButtonFormFieldFacade = acroForm.GetButtonFormField("Submit")
'Retrieve form field widget:
Dim buttonWidget As PdfButtonWidgetFacade = pushButton.Widgets(0)
'Change widget's color options:
buttonWidget.BorderWidth = 1
buttonWidget.BackgroundColor = New PdfRGBColor(0.81, 0.81, 0.81)
buttonWidget.BorderColor = New PdfRGBColor(0.47, 0.44, 0.67)
buttonWidget.FontColor = New PdfRGBColor(0.34, 0.25, 0.36)
End Using
Use the following methods to specify a button icon:
The PdfButtonWidgetIconOptions class properties allow you to specify icon display and scale options. Use the PdfButtonWidgetFacade.IconOptions property to get these options.
The code sample below specifies a normal icon and its options:
using (PdfDocumentProcessor pdfDocumentProcessor = new PdfDocumentProcessor())
{
pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf");
PdfDocumentFacade documentFacade = pdfDocumentProcessor.DocumentFacade;
PdfAcroFormFacade acroForm = documentFacade.AcroForm;
//Change all form fields' color settings:
var fields = acroForm.GetFields();
foreach (PdfFormFieldFacade field in fields)
{
ChangeFormFieldColor(field);
}
//Obtain button form field parameters:
PdfButtonFormFieldFacade pushButton = acroForm.GetButtonFormField("Submit");
PdfButtonWidgetFacade buttonWidget = pushButton.Widgets[0];
//Specify a button icon and set its options:
buttonWidget.SetNormalIcon("Documents//submit_3802014.png");
buttonWidget.IconOptions.FitToAnnotationBounds = true;
buttonWidget.IconOptions.ScaleCondition = PdfIconScalingCircumstances.BiggerThanAnnotationRectangle;
buttonWidget.TextPosition = PdfWidgetAnnotationTextPosition.NoCaption;
}
Using pdfDocumentProcessor As New PdfDocumentProcessor()
pdfDocumentProcessor.LoadDocument("Documents//FormDemo.pdf")
Dim documentFacade As PdfDocumentFacade = pdfDocumentProcessor.DocumentFacade
Dim acroForm As PdfAcroFormFacade = documentFacade.AcroForm
'Change all form fields' color settings:
Dim fields = acroForm.GetFields()
For Each field As PdfFormFieldFacade In fields
ChangeFormFieldColor(field)
Next field
'Obtain button form field parameters:
Dim pushButton As PdfButtonFormFieldFacade = acroForm.GetButtonFormField("Submit")
Dim buttonWidget As PdfButtonWidgetFacade = pushButton.Widgets(0)
'Specify a button icon and set its options:
buttonWidget.SetNormalIcon("Documents//submit_3802014.png")
buttonWidget.IconOptions.FitToAnnotationBounds = True
buttonWidget.IconOptions.ScaleCondition = PdfIconScalingCircumstances.BiggerThanAnnotationRectangle
buttonWidget.TextPosition = PdfWidgetAnnotationTextPosition.NoCaption
End Using
Object PdfFormFieldFacade PdfFormFieldFacade<PdfButtonWidgetFacade, PdfButtonFormField> PdfButtonFormFieldFacade
See Also