PdfGraphicsAcroFormField Class
A base class for all interactive form fields in PDF Graphics API.
Namespace: DevExpress.Pdf
Assembly: DevExpress.Pdf.v24.2.Drawing.dll
NuGet Package: DevExpress.Pdf.Drawing
#Declaration
#Remarks
To access the PdfGraphics class, you need to reference the DevExpress.Pdf.Drawing.v24.2 assembly.
Tip
You can use the Pdf
#Create a Form Field
The table below lists available form fields and API used to create each type. All methods and class constructors operate in the world coordinate system.
#Add a Form Field as a Graphics Content
Call the PdfGraphics.AddFormField or PdfDocumentProcessor.AddFormFields method to add a form field as a graphics content.
#Draw a Form Field on a Page
To add an interactive field to a page, call one of the following methods:
- PdfGraphics.AddToPageForeground, PdfGraphics.AddToPageBackground – to add a field to an existing page;
- PdfDocumentProcessor.RenderNewPage – to add a field to a new page.
#Example
This example shows how to use PDF Graphics API to add interactive form fields – text box and radio button group.
using DevExpress.Pdf;
using System.Drawing;
using (var processor = new PdfDocumentProcessor()) {
// Create an empty document.
processor.CreateEmptyDocument("..\\..\\Result.pdf");
// Create graphics and draw form fields.
using (PdfGraphics graphics = processor.CreateGraphics()) {
DrawFormFields(graphics);
// Render a page with graphics.
processor.RenderNewPage(PdfPaperSize.Letter, graphics);
}
}
static void DrawFormFields(PdfGraphics graphics){
// Create a text box field and specify its location on the page.
var textBox =
new PdfGraphicsAcroFormTextBoxField("text box", new RectangleF(30, 10, 200, 30));
// Specify text and appearance parameters.
textBox.Text = "Text Box";
textBox.Appearance.FontSize = 12;
textBox.Appearance.BackgroundColor = Color.AliceBlue;
// Add the text box field to graphics.
graphics.AddFormField(textBox);
// Create a radio group field.
var radioGroup =
new PdfGraphicsAcroFormRadioGroupField("First Group");
// Add the first radio button to the group and specify its location.
radioGroup.AddButton("button1", new RectangleF(30, 60, 20, 20));
// Add the second radio button to the group.
radioGroup.AddButton("button2", new RectangleF(30, 90, 20, 20));
// Specify radio group selected index
radioGroup.SelectedIndex = 0;
// Specify appearance options:
radioGroup.Appearance.BorderAppearance =
new PdfGraphicsAcroFormBorderAppearance()
{
Color = Color.Red,
Width = 3
};
// Add the radio group field to graphics.
graphics.AddFormField(radioGroup);
}