Supported PDF Form Fields on iOS

PSPDFKit supports all form types specified by the PDF specification. We have to differentiate between field objects and annotation objects.

Type Field Object Annotation Object
Check, Radio, and Push Buttons ButtonFormField ButtonFormElement
List and Combo Boxes ChoiceFormField ChoiceFormElement
Text TextFormField TextFieldFormElement
Signatures SignatureFormField SignatureFormElement

Signature form fields and signature form elements require that your license includes either Electronic Signatures or Digital Signatures, or that your license was originally obtained in April 2021 or earlier. If none of these requirements are met, then signature elements will be omitted, and other form elements will be shown.

Retrieve Field and Annotation Objects

Using the PDFFormParser (which can be retrieved from a Document or a PDFDocumentProvider), you can fetch either the field objects or annotation objects using the formFields or forms property.

If you need to retrieve a specific field or annotation object, you can use the findAnnotation(withFieldName:) and findField(withFullFieldName:) methods.

Field Objects

Field objects handle the state of the form field and offer appropriate methods for modifying the form field. Each form field has a fullyQualifiedName that can be used to identify and retrieve a specific field object.

You can query the type property to find out which kind of field object it is. This allows you to easily cast the PDFFormField to the correct type.

Annotation Objects

Each field object has one or more annotations linked to it. The main purpose of an annotation object is to offer a graphical element on top of a PDF (see the Introduction to Annotations guide).