## com.lowagie.text.pdf
Class PRAcroForm

    java.lang.Object
      com.lowagie.text.pdf.PdfObject
          com.lowagie.text.pdf.PdfDictionary
              com.lowagie.text.pdf.PRAcroForm

    public class PRAcroForm

extends PdfDictionary

This class captures an AcroForm on input. Basically, it extends Dictionary by indexing the fields of an AcroForm

Author:
  Mark Thompson

Nested Class Summary
`static class` `PRAcroForm.FieldInformation` This class holds the information for a single field

Field Summary
`(package private) java.util.HashMap` `fieldByName`
`(package private) java.util.ArrayList` `fields`
`(package private) PdfReader` `reader`
`(package private) java.util.ArrayList` `stack`

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
`PRAcroForm(PdfReader reader)` Constructor

Method Summary
`PRAcroForm.FieldInformation` `getField(java.lang.String name)`
`java.util.ArrayList` `getFields()`
`PRIndirectReference` `getRefByName(java.lang.String name)` Given the title (/T) of a reference, return the associated reference
`protected void` `iterateFields(PdfArray fieldlist, PRIndirectReference fieldDict, java.lang.String title)` After reading, we index all of the fields.
`protected PdfDictionary` `mergeAttrib(PdfDictionary parent, PdfDictionary child)` merge field attributes from two dictionaries
`protected void` `pushAttrib(PdfDictionary dict)` stack a level of dictionary.
`void` `readAcroForm(PdfDictionary root)` Read, and comprehend the acroform
`int` `size()` Number of fields found

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, 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

### fields

    java.util.ArrayList fields

### stack

    java.util.ArrayList stack

### fieldByName

    java.util.HashMap fieldByName

### reader

    PdfReader reader

Constructor Detail

### PRAcroForm

    public PRAcroForm(PdfReader reader)

  Constructor

  Parameters:
    `reader` - reader of the input file

Method Detail

### size

    public int size()

  Number of fields found

  Overrides:
    `size` in class `PdfDictionary`
  Returns:
    size

### getFields

    public java.util.ArrayList getFields()

### getField

    public PRAcroForm.FieldInformation getField(java.lang.String name)

### getRefByName

    public PRIndirectReference getRefByName(java.lang.String name)

  Given the title (/T) of a reference, return the associated reference

  Parameters:
    `name` - a string containing the path
  Returns:
    a reference to the field, or null

### readAcroForm

    public void readAcroForm(PdfDictionary root)

  Read, and comprehend the acroform

  Parameters:
    `root` - the document root

### iterateFields

    protected void iterateFields(PdfArray fieldlist,
                                 PRIndirectReference fieldDict,
                                 java.lang.String title)

  After reading, we index all of the fields. Recursive.

  Parameters:
    `fieldlist` - An array of fields
    `fieldDict` - the last field dictionary we encountered (recursively)
    `title` - the pathname of the field, up to this point or null

### mergeAttrib

    protected PdfDictionary mergeAttrib(PdfDictionary parent,
                                        PdfDictionary child)

  merge field attributes from two dictionaries

  Parameters:
    `parent` - one dictionary
    `child` - the other dictionary
  Returns:
    a merged dictionary

### pushAttrib

    protected void pushAttrib(PdfDictionary dict)

  stack a level of dictionary. Merge in a dictionary from this level

Hosted by Hostbasket