Class PDNonTerminalField
- java.lang.Object
-
- com.tom_roush.pdfbox.pdmodel.interactive.form.PDField
-
- com.tom_roush.pdfbox.pdmodel.interactive.form.PDNonTerminalField
-
- All Implemented Interfaces:
COSObjectable
public class PDNonTerminalField extends PDField
A non terminal field in an interactive form. A non terminal field is a node in the fields tree node whose descendants are fields. The attributes such as FT (field type) or V (field value) do not logically belong to the non terminal field but are inheritable attributes for descendant terminal fields.
-
-
Constructor Summary
Constructors Constructor Description PDNonTerminalField(PDAcroForm acroForm)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<PDField>getChildren()Returns this field's children.COSBasegetDefaultValue()Returns the default value of this field.intgetFieldFlags()This will get the flags for this field.StringgetFieldType()Get the FT entry of the field.COSBasegetValue()Get the field value.StringgetValueAsString()Returns a string representation of the "V" entry, or an empty string.List<PDAnnotationWidget>getWidgets()Returns the widget annotations associated with this field.voidsetChildren(List<PDField> children)Sets the child fields.voidsetDefaultValue(COSBase value)Sets the default of this field.voidsetValue(COSBase object)Sets the value of this field.voidsetValue(String value)Sets the plain text value of this field.-
Methods inherited from class com.tom_roush.pdfbox.pdmodel.interactive.form.PDField
getAcroForm, getActions, getAlternateFieldName, getCOSObject, getFullyQualifiedName, getInheritableAttribute, getMappingName, getParent, getPartialName, isNoExport, isReadOnly, isRequired, setAlternateFieldName, setFieldFlags, setMappingName, setNoExport, setPartialName, setReadOnly, setRequired, toString
-
-
-
-
Constructor Detail
-
PDNonTerminalField
public PDNonTerminalField(PDAcroForm acroForm)
Constructor.- Parameters:
acroForm- The form that this field is part of.
-
-
Method Detail
-
getFieldFlags
public int getFieldFlags()
Description copied from class:PDFieldThis will get the flags for this field.- Specified by:
getFieldFlagsin classPDField- Returns:
- flags The set of flags.
-
getChildren
public List<PDField> getChildren()
Returns this field's children. These may be either terminal or non-terminal fields.- Returns:
- the list of child fields. Be aware that this list is not backed by the
children of the field, so adding or deleting has no effect on the PDF document until you call
setChildren()with the modified list.
-
setChildren
public void setChildren(List<PDField> children)
Sets the child fields.- Parameters:
children- The list of child fields.
-
getFieldType
public String getFieldType()
Get the FT entry of the field. This is a read only field and is set depending on the actual type. The field type is an inheritable attribute.Note: while non-terminal fields do inherit field values, this method returns the local value, without inheritance.
- Specified by:
getFieldTypein classPDField- Returns:
- The Field type.
-
getValue
public COSBase getValue()
Get the field value.Note: while non-terminal fields do inherit field values, this method returns the local value, without inheritance.
-
getValueAsString
public String getValueAsString()
Returns a string representation of the "V" entry, or an empty string.Note: while non-terminal fields do inherit field values, this method returns the local value, without inheritance.
- Specified by:
getValueAsStringin classPDField- Returns:
- The list of widget annotations.
-
setValue
public void setValue(COSBase object) throws IOException
Sets the value of this field. This may be of any kind which is valid for this field's children.Note: while non-terminal fields do inherit field values, this method returns the local value, without inheritance.
- Parameters:
object-- Throws:
IOException
-
setValue
public void setValue(String value) throws IOException
Sets the plain text value of this field.- Specified by:
setValuein classPDField- Parameters:
value- Plain text- Throws:
IOException- if the value could not be set
-
getDefaultValue
public COSBase getDefaultValue()
Returns the default value of this field. This may be of any kind which is valid for this field's children.Note: while non-terminal fields do inherit field values, this method returns the local value, without inheritance.
-
setDefaultValue
public void setDefaultValue(COSBase value)
Sets the default of this field. This may be of any kind which is valid for this field's children.Note: while non-terminal fields do inherit field values, this method returns the local value, without inheritance.
- Parameters:
value-
-
getWidgets
public List<PDAnnotationWidget> getWidgets()
Description copied from class:PDFieldReturns the widget annotations associated with this field. ForPDNonTerminalFieldthe list will be empty as non terminal fields have no visual representation in the form.- Specified by:
getWidgetsin classPDField- Returns:
- a List of
PDAnnotationWidgetannotations. Be aware that this list is not backed by the actual widget collection of the field, so adding or deleting has no effect on the PDF document. ForPDTerminalFieldyou'd have to callsetWidgets()with the modified list.
-
-