com.lowagie.text.pdf

## Class PdfFormField

- java.lang.Object
- - com.lowagie.text.pdf.PdfObject
  - - com.lowagie.text.pdf.PdfDictionary
    - - com.lowagie.text.pdf.PdfAnnotation
      - - com.lowagie.text.pdf.PdfFormField

-     public class PdfFormField
      extends PdfAnnotation

  Implements form fields.
  Author:
    Paulo Soares (psoares@consiste.pt)

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.lowagie.text.pdf.PdfAnnotation

      `PdfAnnotation.PdfImportedLink`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `FF_COMB`
    `static int` | `FF_COMBO`
    `static int` | `FF_DONOTSCROLL`
    `static int` | `FF_DONOTSPELLCHECK`
    `static int` | `FF_EDIT`
    `static int` | `FF_FILESELECT`
    `static int` | `FF_MULTILINE`
    `static int` | `FF_MULTISELECT`
    `static int` | `FF_NO_EXPORT`
    `static int` | `FF_NO_TOGGLE_TO_OFF`
    `static int` | `FF_PASSWORD`
    `static int` | `FF_PUSHBUTTON`
    `static int` | `FF_RADIO`
    `static int` | `FF_RADIOSINUNISON`
    `static int` | `FF_READ_ONLY`
    `static int` | `FF_REQUIRED`
    `static PdfName` | `IF_SCALE_ALWAYS`
    `static PdfName` | `IF_SCALE_ANAMORPHIC`
    `static PdfName` | `IF_SCALE_BIGGER`
    `static PdfName` | `IF_SCALE_NEVER`
    `static PdfName` | `IF_SCALE_PROPORTIONAL`
    `static PdfName` | `IF_SCALE_SMALLER`
    `protected java.util.ArrayList` | `kids`
    `(package private) static PdfName[]` | `mergeTarget`
    `static int` | `MK_CAPTION_ABOVE`
    `static int` | `MK_CAPTION_BELOW`
    `static int` | `MK_CAPTION_LEFT`
    `static int` | `MK_CAPTION_OVERLAID`
    `static int` | `MK_CAPTION_RIGHT`
    `static int` | `MK_NO_CAPTION`
    `static int` | `MK_NO_ICON`
    `static boolean` | `MULTILINE`
    `protected PdfFormField` | `parent` Holds value of property parent.
    `static boolean` | `PASSWORD`
    `static boolean` | `PLAINTEXT`
    `static int` | `Q_CENTER`
    `static int` | `Q_LEFT`
    `static int` | `Q_RIGHT`
    `static boolean` | `SINGLELINE`

    - ### Fields inherited from class com.lowagie.text.pdf.PdfAnnotation

      `AA_BLUR, AA_DOWN, AA_ENTER, AA_EXIT, AA_FOCUS, AA_JS_CHANGE, AA_JS_FORMAT, AA_JS_KEY, AA_JS_OTHER_CHANGE, AA_UP, annotation, APPEARANCE_DOWN, APPEARANCE_NORMAL, APPEARANCE_ROLLOVER, FLAGS_HIDDEN, FLAGS_INVISIBLE, FLAGS_LOCKED, FLAGS_NOROTATE, FLAGS_NOVIEW, FLAGS_NOZOOM, FLAGS_PRINT, FLAGS_READONLY, FLAGS_TOGGLENOVIEW, form, HIGHLIGHT_INVERT, HIGHLIGHT_NONE, HIGHLIGHT_OUTLINE, HIGHLIGHT_PUSH, HIGHLIGHT_TOGGLE, MARKUP_HIGHLIGHT, MARKUP_SQUIGGLY, MARKUP_STRIKEOUT, MARKUP_UNDERLINE, reference, templates, used, writer`

    - ### Fields inherited from class com.lowagie.text.pdf.PdfDictionary

      `CATALOG, FONT, hashMap, OUTLINES, PAGE, PAGES`

    - ### Fields inherited from class com.lowagie.text.pdf.PdfObject

      `ARRAY, BOOLEAN, bytes, DICTIONARY, INDIRECT, indRef, NAME, NOTHING, NULL, NUMBER, STREAM, STRING, TEXT_PDFDOCENCODING, TEXT_UNICODE, type`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `PdfFormField(PdfWriter writer)` Creates new PdfFormField
    `` | `PdfFormField(PdfWriter writer, float llx, float lly, float urx, float ury, PdfAction action)` Constructs a new `PdfAnnotation` of subtype link (Action).

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addKid(PdfFormField field)`
    `protected static PdfFormField` | `createButton(PdfWriter writer, int flags)`
    `static PdfFormField` | `createCheckBox(PdfWriter writer)`
    `protected static PdfFormField` | `createChoice(PdfWriter writer, int flags, PdfArray options, int topIndex)`
    `static PdfFormField` | `createCombo(PdfWriter writer, boolean edit, java.lang.String[][] options, int topIndex)`
    `static PdfFormField` | `createCombo(PdfWriter writer, boolean edit, java.lang.String[] options, int topIndex)`
    `static PdfFormField` | `createEmpty(PdfWriter writer)`
    `static PdfFormField` | `createList(PdfWriter writer, java.lang.String[][] options, int topIndex)`
    `static PdfFormField` | `createList(PdfWriter writer, java.lang.String[] options, int topIndex)`
    `static PdfFormField` | `createPushButton(PdfWriter writer)`
    `static PdfFormField` | `createRadioButton(PdfWriter writer, boolean noToggleToOff)`
    `static PdfFormField` | `createSignature(PdfWriter writer)`
    `static PdfFormField` | `createTextField(PdfWriter writer, boolean multiline, boolean password, int maxLen)`
    `java.util.ArrayList` | `getKids()`
    `PdfFormField` | `getParent()` Getter for property parent.
    `(package private) static void` | `mergeResources(PdfDictionary result, PdfDictionary source)`
    `(package private) static void` | `mergeResources(PdfDictionary result, PdfDictionary source, PdfStamperImp writer)`
    `protected static PdfArray` | `processOptions(java.lang.String[] options)`
    `protected static PdfArray` | `processOptions(java.lang.String[][] options)`
    `void` | `setButton(int flags)`
    `void` | `setDefaultValueAsName(java.lang.String s)`
    `void` | `setDefaultValueAsString(java.lang.String s)`
    `int` | `setFieldFlags(int flags)`
    `void` | `setFieldName(java.lang.String s)`
    `void` | `setMappingName(java.lang.String s)`
    `void` | `setQuadding(int v)`
    `void` | `setUsed()` Setter for property used.
    `void` | `setUserName(java.lang.String s)`
    `void` | `setValue(PdfSignature sig)`
    `void` | `setValueAsName(java.lang.String s)`
    `void` | `setValueAsString(java.lang.String s)`
    `void` | `setWidget(Rectangle rect, PdfName highlight)`
    `static PdfAnnotation` | `shallowDuplicate(PdfAnnotation annot)`

    - ### Methods inherited from class com.lowagie.text.pdf.PdfAnnotation

      `createFileAttachment, createFileAttachment, createFreeText, createInk, createLine, createLink, createLink, createLink, createLink, createMarkup, createPopup, createScreen, createSquareCircle, createStamp, createText, getIndirectReference, getMK, getMKColor, getPlaceInPage, getTemplates, isAnnotation, isForm, isUsed, setAction, setAdditionalActions, setAppearance, setAppearance, setAppearanceState, setBorder, setBorderStyle, setColor, setDefaultAppearanceString, setFlags, setHighlighting, setLayer, setMKAlternateCaption, setMKAlternateIcon, setMKBackgroundColor, setMKBorderColor, setMKIconFit, setMKNormalCaption, setMKNormalIcon, setMKRolloverCaption, setMKRolloverIcon, setMKRotation, setMKTextPosition, setName, setPage, setPage, setPlaceInPage, setPopup, setRotate, setTitle`

    - ### Methods inherited from class com.lowagie.text.pdf.PdfDictionary

      `contains, get, getAsArray, getAsBoolean, getAsDict, getAsIndirectObject, getAsName, getAsNumber, getAsStream, getAsString, getDirectObject, getKeys, isCatalog, isFont, isOutlineTree, isPage, isPages, merge, mergeDifferent, put, putAll, putEx, remove, size, toPdf, toString`

    - ### Methods inherited from class com.lowagie.text.pdf.PdfObject

      `canBeInObjStm, getBytes, getIndRef, isArray, isBoolean, isDictionary, isIndirect, isName, isNull, isNumber, isStream, isString, length, setContent, setIndRef, type`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### FF_READ_ONLY

          public static final int FF_READ_ONLY

      See Also:
        Constant Field Values

    - #### FF_REQUIRED

          public static final int FF_REQUIRED

      See Also:
        Constant Field Values

    - #### FF_NO_EXPORT

          public static final int FF_NO_EXPORT

      See Also:
        Constant Field Values

    - #### FF_NO_TOGGLE_TO_OFF

          public static final int FF_NO_TOGGLE_TO_OFF

      See Also:
        Constant Field Values

    - #### FF_RADIO

          public static final int FF_RADIO

      See Also:
        Constant Field Values

    - #### FF_PUSHBUTTON

          public static final int FF_PUSHBUTTON

      See Also:
        Constant Field Values

    - #### FF_MULTILINE

          public static final int FF_MULTILINE

      See Also:
        Constant Field Values

    - #### FF_PASSWORD

          public static final int FF_PASSWORD

      See Also:
        Constant Field Values

    - #### FF_COMBO

          public static final int FF_COMBO

      See Also:
        Constant Field Values

    - #### FF_EDIT

          public static final int FF_EDIT

      See Also:
        Constant Field Values

    - #### FF_FILESELECT

          public static final int FF_FILESELECT

      See Also:
        Constant Field Values

    - #### FF_MULTISELECT

          public static final int FF_MULTISELECT

      See Also:
        Constant Field Values

    - #### FF_DONOTSPELLCHECK

          public static final int FF_DONOTSPELLCHECK

      See Also:
        Constant Field Values

    - #### FF_DONOTSCROLL

          public static final int FF_DONOTSCROLL

      See Also:
        Constant Field Values

    - #### FF_COMB

          public static final int FF_COMB

      See Also:
        Constant Field Values

    - #### FF_RADIOSINUNISON

          public static final int FF_RADIOSINUNISON

      See Also:
        Constant Field Values

    - #### Q_LEFT

          public static final int Q_LEFT

      See Also:
        Constant Field Values

    - #### Q_CENTER

          public static final int Q_CENTER

      See Also:
        Constant Field Values

    - #### Q_RIGHT

          public static final int Q_RIGHT

      See Also:
        Constant Field Values

    - #### MK_NO_ICON

          public static final int MK_NO_ICON

      See Also:
        Constant Field Values

    - #### MK_NO_CAPTION

          public static final int MK_NO_CAPTION

      See Also:
        Constant Field Values

    - #### MK_CAPTION_BELOW

          public static final int MK_CAPTION_BELOW

      See Also:
        Constant Field Values

    - #### MK_CAPTION_ABOVE

          public static final int MK_CAPTION_ABOVE

      See Also:
        Constant Field Values

    - #### MK_CAPTION_RIGHT

          public static final int MK_CAPTION_RIGHT

      See Also:
        Constant Field Values

    - #### MK_CAPTION_LEFT

          public static final int MK_CAPTION_LEFT

      See Also:
        Constant Field Values

    - #### MK_CAPTION_OVERLAID

          public static final int MK_CAPTION_OVERLAID

      See Also:
        Constant Field Values

    - #### IF_SCALE_ALWAYS

          public static final PdfName IF_SCALE_ALWAYS

    - #### IF_SCALE_BIGGER

          public static final PdfName IF_SCALE_BIGGER

    - #### IF_SCALE_SMALLER

          public static final PdfName IF_SCALE_SMALLER

    - #### IF_SCALE_NEVER

          public static final PdfName IF_SCALE_NEVER

    - #### IF_SCALE_ANAMORPHIC

          public static final PdfName IF_SCALE_ANAMORPHIC

    - #### IF_SCALE_PROPORTIONAL

          public static final PdfName IF_SCALE_PROPORTIONAL

    - #### MULTILINE

          public static final boolean MULTILINE

      See Also:
        Constant Field Values

    - #### SINGLELINE

          public static final boolean SINGLELINE

      See Also:
        Constant Field Values

    - #### PLAINTEXT

          public static final boolean PLAINTEXT

      See Also:
        Constant Field Values

    - #### PASSWORD

          public static final boolean PASSWORD

      See Also:
        Constant Field Values

    - #### mergeTarget

          static PdfName[] mergeTarget

    - #### parent

          protected PdfFormField parent

      Holds value of property parent.

    - #### kids

          protected java.util.ArrayList kids

  - ### Constructor Detail

    - #### PdfFormField

          public PdfFormField(PdfWriter writer,
                      float llx,
                      float lly,
                      float urx,
                      float ury,
                      PdfAction action)

      Constructs a new `PdfAnnotation` of subtype link (Action).

    - #### PdfFormField

          protected PdfFormField(PdfWriter writer)

      Creates new PdfFormField

  - ### Method Detail

    - #### setWidget

          public void setWidget(Rectangle rect,
                       PdfName highlight)

    - #### createEmpty

          public static PdfFormField createEmpty(PdfWriter writer)

    - #### setButton

          public void setButton(int flags)

    - #### createButton

          protected static PdfFormField createButton(PdfWriter writer,
                                  int flags)

    - #### createPushButton

          public static PdfFormField createPushButton(PdfWriter writer)

    - #### createCheckBox

          public static PdfFormField createCheckBox(PdfWriter writer)

    - #### createRadioButton

          public static PdfFormField createRadioButton(PdfWriter writer,
                                       boolean noToggleToOff)

    - #### createTextField

          public static PdfFormField createTextField(PdfWriter writer,
                                     boolean multiline,
                                     boolean password,
                                     int maxLen)

    - #### createChoice

          protected static PdfFormField createChoice(PdfWriter writer,
                                  int flags,
                                  PdfArray options,
                                  int topIndex)

    - #### createList

          public static PdfFormField createList(PdfWriter writer,
                                java.lang.String[] options,
                                int topIndex)

    - #### createList

          public static PdfFormField createList(PdfWriter writer,
                                java.lang.String[][] options,
                                int topIndex)

    - #### createCombo

          public static PdfFormField createCombo(PdfWriter writer,
                                 boolean edit,
                                 java.lang.String[] options,
                                 int topIndex)

    - #### createCombo

          public static PdfFormField createCombo(PdfWriter writer,
                                 boolean edit,
                                 java.lang.String[][] options,
                                 int topIndex)

    - #### processOptions

          protected static PdfArray processOptions(java.lang.String[] options)

    - #### processOptions

          protected static PdfArray processOptions(java.lang.String[][] options)

    - #### createSignature

          public static PdfFormField createSignature(PdfWriter writer)

    - #### getParent

          public PdfFormField getParent()

      Getter for property parent.
      Returns:
        Value of property parent.

    - #### addKid

          public void addKid(PdfFormField field)

    - #### getKids

          public java.util.ArrayList getKids()

    - #### setFieldFlags

          public int setFieldFlags(int flags)

    - #### setValueAsString

          public void setValueAsString(java.lang.String s)

    - #### setValueAsName

          public void setValueAsName(java.lang.String s)

    - #### setValue

          public void setValue(PdfSignature sig)

    - #### setDefaultValueAsString

          public void setDefaultValueAsString(java.lang.String s)

    - #### setDefaultValueAsName

          public void setDefaultValueAsName(java.lang.String s)

    - #### setFieldName

          public void setFieldName(java.lang.String s)

    - #### setUserName

          public void setUserName(java.lang.String s)

    - #### setMappingName

          public void setMappingName(java.lang.String s)

    - #### setQuadding

          public void setQuadding(int v)

    - #### mergeResources

          static void mergeResources(PdfDictionary result,
                            PdfDictionary source,
                            PdfStamperImp writer)

    - #### mergeResources

          static void mergeResources(PdfDictionary result,
                            PdfDictionary source)

    - #### setUsed

          public void setUsed()

      Description copied from class: `PdfAnnotation`
      Setter for property used.
      Overrides:
        `setUsed` in class `PdfAnnotation`

    - #### shallowDuplicate

          public static PdfAnnotation shallowDuplicate(PdfAnnotation annot)