Class TextFormField
Text box which accepts arbitrary user input
Inheritance
Implements
Namespace: IronSoftware.Forms
Assembly: IronPdf.dll
Syntax
public class TextFormField : Object, IFormField, IFormFieldObject, IFormFieldAnnotationObject, IPdfDocumentObject, IPdfDocumentObject, IDocumentObject
TextFormField is the text input field you read or fill in a fillable PDF form: single-line text boxes, multi-line text areas, password fields, file-select fields, and rich-text fields. It is the most common implementor of IFormField, the contract returned when reading fields from a loaded PDF.
TextFormField matters when an application reads an IFormField from a loaded PDF and needs text-specific behavior that the interface does not expose. The canonical workflow uses FindFormField to locate a field by name, sets Value to fill it, and saves the document. The class is also used directly when adding a new text field to a PDF programmatically without an HTML source, in which case the seven-parameter constructor places the field at an explicit page index and rectangle.
Headline members fall into clear groups. Identity and state are Name, FullName, Value, ReadOnly, FormType, and Type (which returns a PdfFormFieldType). Text-input behavior is IsMultiline for text areas, IsPassword for obscured input, MaxLength for character limits, IsRichText plus RichText for formatted content, IsFileSelect for file-path fields, and DisableSpellCheck. Annotation geometry is X, Y, Width, Height, PageIndex, and the underlying Annotations list. Appearance is controlled by DefaultAppearance and the SetDefaultFont(string FontName, int FontSize, Color FontColor) method, which applies a font to the field and its annotations and may be overridden by per-annotation fonts. Form-level flag bits are exposed through FormFlags of type PdfFormFieldFlags.
using IronPdf;
using IronSoftware.Forms;
// Fill an existing text field. FindFormField returns IFormField; cast to
// TextFormField when text-specific properties such as IsMultiline, IsPassword,
// or MaxLength are needed.
PdfDocument pdf = PdfDocument.FromFile("application.pdf");
if (pdf.Form.FindFormField("FullName") is TextFormField nameField && !nameField.ReadOnly)
{
nameField.Value = "Jane Doe";
}
pdf.SaveAs("application-filled.pdf");Adding a brand-new text box from scratch follows the constructor-and-Add path covered in the create PDF forms how-to, which builds text boxes, checkboxes, and signatures together. Reading and filling existing fields by name is shown in the fill and edit PDF forms how-to. For the collection that owns these fields and exposes FindFormField, see FormFieldCollection.
Constructors
TextFormField(String, String, UInt32, Double, Double, Double, Double)
Create a new text field with the specified parameters
Declaration
public TextFormField(string name, string value, uint page_index, double x, double y, double width, double height)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | name | Form name |
| System.String | value | Form value |
| System.UInt32 | page_index | Form page index |
| System.Double | x | Form x-coordinate |
| System.Double | y | Form y-coordinate |
| System.Double | width | Form width |
| System.Double | height | Form height |
Properties
Annotations
Form field annotations
Declaration
public List<IFormFieldAnnotation> Annotations { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.List<IFormFieldAnnotation> |
Choices
Selection choices
Declaration
public List<string> Choices { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.List<System.String> |
Client
Pdf client
Declaration
public IPdfClient Client { get; set; }
Property Value
| Type | Description |
|---|---|
| IronSoftware.Pdfium.IPdfClient |
DefaultAppearance
Default appearance string
Declaration
public string DefaultAppearance { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
DisableSpellCheck
Disable spell-checking
Declaration
public bool DisableSpellCheck { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
DocumentId
Declaration
public IDocumentId DocumentId { get; set; }
Property Value
| Type | Description |
|---|---|
| IronSoftware.Abstractions.Pdf.IDocumentId |
FormFlags
Form field flags
Declaration
public PdfFormFieldFlags FormFlags { get; set; }
Property Value
| Type | Description |
|---|---|
| PdfFormFieldFlags |
FormType
Form type
Declaration
public string FormType { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
FullName
Fully qualified name
Declaration
public string FullName { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Height
Annotation height
Declaration
public double Height { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Double |
IsFileSelect
Text content represents a file path
Declaration
public bool IsFileSelect { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsMultiline
Allow multiple lines
Declaration
public bool IsMultiline { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsPassword
Obscure value of the textbox
Declaration
public bool IsPassword { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
IsRichText
Enable rich text formatting
Declaration
public bool IsRichText { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
MaxLength
Maximum number of characters which can be specified in the value
Declaration
public int MaxLength { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
Name
Partial name
Declaration
public string Name { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
ObjNum
Declaration
public uint ObjNum { get; set; }
Property Value
| Type | Description |
|---|---|
| System.UInt32 |
ObjType
Object type
Declaration
public string ObjType { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
PageIndex
Declaration
public uint PageIndex { get; set; }
Property Value
| Type | Description |
|---|---|
| System.UInt32 |
ReadOnly
True if read-only
Declaration
public bool ReadOnly { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
RichText
Form value using rich text
Declaration
public string RichText { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Type
Pdf form field type
Declaration
public PdfFormFieldType Type { get; }
Property Value
| Type | Description |
|---|---|
| PdfFormFieldType |
Value
Form value
Declaration
public string Value { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Width
Annotation width
Declaration
public double Width { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Double |
X
Annotation X position
Declaration
public double X { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Double |
Y
Annotation y position
Declaration
public double Y { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Double |
Methods
SetDefaultFont(String, Int32, Color)
Set the default font to be used by this form field and any associated annotations
Declaration
public void SetDefaultFont(string FontName, int FontSize, Color FontColor)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | FontName | Font name with weight. Example "AdobeThai-Bold" |
| System.Int32 | FontSize | Font size (whole integer such as 12 or 24) |
| System.Drawing.Color | FontColor | Font color (only R, G, and B are used) |
Remarks
This option may be overwritten by fonts applied to specific form field annotations