com.itextpdf.text.pdf
Class TextField

java.lang.Object
  extended by com.itextpdf.text.pdf.BaseField
      extended by com.itextpdf.text.pdf.TextField

public class TextField
extends BaseField

Supports text, combo and list fields generating the correct appearances. All the option in the Acrobat GUI are supported in an easy to use API.

Author:
Paulo Soares

Field Summary
 
Fields inherited from class com.itextpdf.text.pdf.BaseField
alignment, backgroundColor, BORDER_WIDTH_MEDIUM, BORDER_WIDTH_THICK, BORDER_WIDTH_THIN, borderColor, borderStyle, borderWidth, box, COMB, DO_NOT_SCROLL, DO_NOT_SPELL_CHECK, EDIT, fieldName, FILE_SELECTION, font, fontSize, HIDDEN, HIDDEN_BUT_PRINTABLE, maxCharacterLength, MULTILINE, MULTISELECT, options, PASSWORD, READ_ONLY, REQUIRED, rotation, text, textColor, visibility, VISIBLE, VISIBLE_BUT_DOES_NOT_PRINT, writer
 
Constructor Summary
TextField(PdfWriter writer, Rectangle box, String fieldName)
          Creates a new TextField.
 
Method Summary
 void addChoiceSelection(int selection)
          Adds another (or a first I suppose) selection to a MULTISELECT list.
 PdfAppearance getAppearance()
          Get the PdfAppearance of a text or combo field
 String[] getChoiceExports()
          Gets the export values in list/combo fields.
protected  PdfFormField getChoiceField(boolean isList)
           
 String[] getChoices()
          Gets the choices to be presented to the user in list/combo fields.
 int getChoiceSelection()
          Gets the zero based index of the selected item.
 ArrayList<Integer> getChoiceSelections()
          Gets the selected items.
 PdfFormField getComboField()
          Gets a new combo field.
 String getDefaultText()
          Gets the default text.
 BaseFont getExtensionFont()
          Gets the extensionFont.
 PdfFormField getListField()
          Gets a new list field.
 ArrayList<BaseFont> getSubstitutionFonts()
          Gets the list of substitution fonts.
 PdfFormField getTextField()
          Gets a new text field.
 int getVisibleTopChoice()
          Returns the index of the top visible choice of a list.
static String obfuscatePassword(String text)
          Obfuscates a password String.
static String removeCRLF(String text)
          Removes CRLF from a String.
 void setChoiceExports(String[] choiceExports)
          Sets the export values in list/combo fields.
 void setChoices(String[] choices)
          Sets the choices to be presented to the user in list/combo fields.
 void setChoiceSelection(int choiceSelection)
          Sets the zero based index of the selected item.
 void setChoiceSelections(ArrayList<Integer> selections)
          Replaces the existing selections with the param.
 void setDefaultText(String defaultText)
          Sets the default text.
 void setExtensionFont(BaseFont extensionFont)
          Sets the extensionFont.
 void setExtraMargin(float extraMarginLeft, float extraMarginTop)
          Sets extra margins in text fields to better mimic the Acrobat layout.
 void setSubstitutionFonts(ArrayList<BaseFont> substitutionFonts)
          Sets a list of substitution fonts.
 void setVisibleTopChoice(int visibleTopChoice)
          Sets the top visible choice for lists;
 
Methods inherited from class com.itextpdf.text.pdf.BaseField
breakLines, getAlignment, getBackgroundColor, getBorderAppearance, getBorderColor, getBorderStyle, getBorderWidth, getBox, getFieldName, getFont, getFontSize, getHardBreaks, getMaxCharacterLength, getOptions, getRealFont, getRotation, getText, getTextColor, getVisibility, getWriter, moveFields, setAlignment, setBackgroundColor, setBorderColor, setBorderStyle, setBorderWidth, setBox, setFieldName, setFont, setFontSize, setMaxCharacterLength, setOptions, setRotation, setRotationFromPage, setText, setTextColor, setVisibility, setWriter, trimRight
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TextField

public TextField(PdfWriter writer,
                 Rectangle box,
                 String fieldName)
Creates a new TextField.

Parameters:
writer - the document PdfWriter
box - the field location and dimensions
fieldName - the field name. If null only the widget keys will be included in the field allowing it to be used as a kid field.
Method Detail

removeCRLF

public static String removeCRLF(String text)
Removes CRLF from a String.

Parameters:
text -
Returns:
String
Since:
2.1.5

obfuscatePassword

public static String obfuscatePassword(String text)
Obfuscates a password String. Every character is replaced by an asterisk (*).

Parameters:
text -
Returns:
String
Since:
2.1.5

getAppearance

public PdfAppearance getAppearance()
                            throws IOException,
                                   DocumentException
Get the PdfAppearance of a text or combo field

Returns:
A PdfAppearance
Throws:
IOException - on error
DocumentException - on error

getTextField

public PdfFormField getTextField()
                          throws IOException,
                                 DocumentException
Gets a new text field.

Returns:
a new text field
Throws:
IOException - on error
DocumentException - on error

getComboField

public PdfFormField getComboField()
                           throws IOException,
                                  DocumentException
Gets a new combo field.

Returns:
a new combo field
Throws:
IOException - on error
DocumentException - on error

getListField

public PdfFormField getListField()
                          throws IOException,
                                 DocumentException
Gets a new list field.

Returns:
a new list field
Throws:
IOException - on error
DocumentException - on error

getChoiceField

protected PdfFormField getChoiceField(boolean isList)
                               throws IOException,
                                      DocumentException
Throws:
IOException
DocumentException

getDefaultText

public String getDefaultText()
Gets the default text.

Returns:
the default text

setDefaultText

public void setDefaultText(String defaultText)
Sets the default text. It is only meaningful for text fields.

Parameters:
defaultText - the default text

getChoices

public String[] getChoices()
Gets the choices to be presented to the user in list/combo fields.

Returns:
the choices to be presented to the user

setChoices

public void setChoices(String[] choices)
Sets the choices to be presented to the user in list/combo fields.

Parameters:
choices - the choices to be presented to the user

getChoiceExports

public String[] getChoiceExports()
Gets the export values in list/combo fields.

Returns:
the export values in list/combo fields

setChoiceExports

public void setChoiceExports(String[] choiceExports)
Sets the export values in list/combo fields. If this array is null then the choice values will also be used as the export values.

Parameters:
choiceExports - the export values in list/combo fields

getChoiceSelection

public int getChoiceSelection()
Gets the zero based index of the selected item.

Returns:
the zero based index of the selected item

getChoiceSelections

public ArrayList<Integer> getChoiceSelections()
Gets the selected items.

Returns:
the selected items
Since:
5.0.1

setVisibleTopChoice

public void setVisibleTopChoice(int visibleTopChoice)
Sets the top visible choice for lists;

Parameters:
visibleTopChoice - index of the first visible item (zero-based array)
Since:
5.5.3

getVisibleTopChoice

public int getVisibleTopChoice()
Returns the index of the top visible choice of a list. Default is -1.

Returns:
the index of the top visible choice

setChoiceSelection

public void setChoiceSelection(int choiceSelection)
Sets the zero based index of the selected item.

Parameters:
choiceSelection - the zero based index of the selected item

addChoiceSelection

public void addChoiceSelection(int selection)
Adds another (or a first I suppose) selection to a MULTISELECT list. This doesn't do anything unless this.options & MUTLISELECT != 0

Parameters:
selection - new selection

setChoiceSelections

public void setChoiceSelections(ArrayList<Integer> selections)
Replaces the existing selections with the param. If this field isn't a MULTISELECT list, all but the first element will be removed.

Parameters:
selections - new selections. If null, it clear()s the underlying ArrayList.

setExtraMargin

public void setExtraMargin(float extraMarginLeft,
                           float extraMarginTop)
Sets extra margins in text fields to better mimic the Acrobat layout.

Parameters:
extraMarginLeft - the extra margin left
extraMarginTop - the extra margin top

getSubstitutionFonts

public ArrayList<BaseFont> getSubstitutionFonts()
Gets the list of substitution fonts. The list is composed of BaseFont and can be null. The fonts in this list will be used if the original font doesn't contain the needed glyphs.

Returns:
the list

setSubstitutionFonts

public void setSubstitutionFonts(ArrayList<BaseFont> substitutionFonts)
Sets a list of substitution fonts. The list is composed of BaseFont and can also be null. The fonts in this list will be used if the original font doesn't contain the needed glyphs.

Parameters:
substitutionFonts - the list

getExtensionFont

public BaseFont getExtensionFont()
Gets the extensionFont. This font will be searched before the substitution fonts. It may be null.

Returns:
the extensionFont

setExtensionFont

public void setExtensionFont(BaseFont extensionFont)
Sets the extensionFont. This font will be searched before the substitution fonts. It may be null.

Parameters:
extensionFont - New value of property extensionFont.


Copyright © 2014. All Rights Reserved.