Foxit PDF SDK
|
Public Member Functions | |
Form (Form other) | |
Constructor, with another form object. More... | |
Form (PDFDoc document) throws com.foxit.sdk.PDFException | |
Constructor, with PDF document. More... | |
Control | addControl (PDFPage page, String field_name, int field_type, RectF rect) throws com.foxit.sdk.PDFException |
Add a new form control to a specified form field. If the form field does not exist, this function will add a form field as well. (Not support signature field) More... | |
synchronized void | delete () |
Clean up related resources immediately. More... | |
boolean | exportToCSV (StreamCallback csv_file, String pdf_file_name, boolean is_append) throws com.foxit.sdk.PDFException |
Export the form data to a CSV file. More... | |
boolean | exportToCSV (String csv_file_path, String pdf_file_name, boolean is_append) throws com.foxit.sdk.PDFException |
Export the form data to a CSV file. More... | |
boolean | exportToHTML (FileWriterCallback html_file, FieldArray field_array, boolean is_include) throws com.foxit.sdk.PDFException |
Export data of specified form fields to an HTML file. More... | |
boolean | exportToHTML (String html_file_path, FieldArray field_array, boolean is_include) throws com.foxit.sdk.PDFException |
Export data of specified form fields to an HTML file. More... | |
boolean | exportToTXT (FileWriterCallback txt_file, FieldArray field_array, boolean is_include) throws com.foxit.sdk.PDFException |
Export data of specified form fields to a TXT file. More... | |
boolean | exportToTXT (String txt_file_path, FieldArray field_array, boolean is_include) throws com.foxit.sdk.PDFException |
Export data of specified form fields to a TXT file. More... | |
boolean | exportToXML (FileWriterCallback xml_file, FieldArray field_array, boolean is_include) throws com.foxit.sdk.PDFException |
Export data of specified form fields to an XML file. More... | |
boolean | exportToXML (String file_path) throws com.foxit.sdk.PDFException |
Export the form data to an XML file. More... | |
boolean | exportToXML (String file_path, FieldArray field_array, boolean is_include) throws com.foxit.sdk.PDFException |
Export data of specified form fields to an XML file. More... | |
void | fixPageFields (int page_index) throws com.foxit.sdk.PDFException |
Fix the fields which are in a PDF page but cannot be counted by current form object. More... | |
int | getAlignment () throws com.foxit.sdk.PDFException |
Get the alignment value which is used as document-wide default value. More... | |
Control | getControl (PDFPage page, int index) throws com.foxit.sdk.PDFException |
Get a form control by index, in a specified PDF page. More... | |
Control | getControlAtDevicePoint (PDFPage page, PointF point, float tolerance, int type, Matrix2D matrix) throws com.foxit.sdk.PDFException |
Get the form control at a specified position, in device coordinate system. More... | |
Control | getControlAtPoint (PDFPage page, PointF point, float tolerance, int type) throws com.foxit.sdk.PDFException |
Get the form control at a specified position, in PDF coordinate system. More... | |
int | getControlCount (PDFPage page) throws com.foxit.sdk.PDFException |
Get count of form controls in a specified PDF page. More... | |
DefaultAppearance | getDefaultAppearance () throws com.foxit.sdk.PDFException |
Get the default appearance data. More... | |
PDFDictionary | getDict () throws com.foxit.sdk.PDFException |
Get the dictionary of current object. More... | |
PDFDoc | getDocument () throws com.foxit.sdk.PDFException |
Get the PDF document, with which current form object is associated. More... | |
Field | getField (int index, String filter) throws com.foxit.sdk.PDFException |
Get a form field by index, whose names satisfy the specified name filter. More... | |
int | getFieldCount (String filter) throws com.foxit.sdk.PDFException |
Get the count of form fields, whose names satisfy the specified name filter. More... | |
FieldArray | getFieldsInCalculationOrder () throws com.foxit.sdk.PDFException |
Get an array of form fields in calculation order. More... | |
Filler | getFormFiller () throws com.foxit.sdk.PDFException |
Get the form filler. More... | |
boolean | importFromXML (String file_path) throws com.foxit.sdk.PDFException |
Import the form data from an XML file. More... | |
boolean | isEmpty () |
Check whether current object is empty or not. More... | |
boolean | moveControl (Control control, String field_name) throws com.foxit.sdk.PDFException |
Move the control to a field specified by field name. More... | |
boolean | needConstructAppearances () throws com.foxit.sdk.PDFException |
Check whether to construct appearance when loading form controls. More... | |
void | removeControl (Control control) throws com.foxit.sdk.PDFException |
Remove a form control. (Not support to remove a form control from a signature field) More... | |
void | removeField (Field field) throws com.foxit.sdk.PDFException |
Remove a form field. (Not support signature field) More... | |
boolean | renameField (Field field, String new_field_name) throws com.foxit.sdk.PDFException |
Rename a field with a new name. More... | |
boolean | reset () throws com.foxit.sdk.PDFException |
Reset data of all fields (except signature fields) to their default value. More... | |
void | setAlignment (int alignment) throws com.foxit.sdk.PDFException |
Set alignment value which is used as document-wide default value. More... | |
void | setConstructAppearances (boolean need_construct) throws com.foxit.sdk.PDFException |
Set a flag that specifies whether to construct appearances when loading form controls. More... | |
void | setDefaultAppearance (DefaultAppearance default_ap) throws com.foxit.sdk.PDFException |
Set default appearance data. More... | |
void | setFieldsInCalculationOrder (FieldArray field_array) throws com.foxit.sdk.PDFException |
Set an array of form fields in calculation order. More... | |
boolean | validateFieldName (int type, String field_name) throws com.foxit.sdk.PDFException |
Validate whether a field name can be used for a new field in specified field type. More... | |
An interactive form – sometimes referred to as an AcroForm – is a collection of fields for gathering information interactively from the user. A PDF document may contain any number of fields appearing on any combination of pages, all of which make up a single, global interactive form spanning the entire document. Arbitrary subsets of these fields can be imported or exported from the document.
Function pdf.PDFDoc.hasForm can be used to judge if a PDF document has interactive form.
A form object can be constructed form a specified PDF document. This class offers functions to retrieve form fields or form controls, import/export form data and other features. For example:
To import form data from a FDF/XFDF file or export such data to a FDF/XFDF file, please refer to functions pdf.PDFDoc.importFromFDF and pdf.PDFDoc.exportToFDF .
To fill the form, please construct a form filler object by current form object or retrieve the filler object by function Form.getFormFiller if such object has been constructed. (There should be only one form filler object for an interactive form).
com.foxit.sdk.pdf.interform.Form.Form | ( | PDFDoc | document | ) | throws com.foxit.sdk.PDFException |
Constructor, with PDF document.
If PDF document does not have AcroForm, this constructor will add an empty AcroForm to the PDF document in order that new fields can be added to the PDF document later.
[in] | document | A valid PDF document. |
com.foxit.sdk.pdf.interform.Form.Form | ( | Form | other | ) |
Constructor, with another form object.
[in] | other | Another form object. |
Control com.foxit.sdk.pdf.interform.Form.addControl | ( | PDFPage | page, |
String | field_name, | ||
int | field_type, | ||
RectF | rect | ||
) | throws com.foxit.sdk.PDFException |
Add a new form control to a specified form field. If the form field does not exist, this function will add a form field as well. (Not support signature field)
Application can use this function to add a new form control:
Whether a form field exists or not, it will be judged with input parameters field_name and field_type.
If user wants to add a new signature field, please use function pdf.PDFPage.addSignature instead of current function.
The newly added form control has no appearance, so user should use setting methods in class Control or in related pdf field or widget annotation to set properties which will affect appearance. Some setting methods of class com.foxit.sdk.pdf.interform.Control and Field may directly update appearance, but functionannots.Annot.resetAppearanceStream of related widget annotation is still recommended to be called to ensure the appearance will indeed be updated.
For push button, check box, radio button, if user calls function annots.Annot.resetAppearanceStream directly without setting any properties, the default appearance style will be used:
[in] | page | A valid PDF page, in which the new form control will be added. It should belong to the same PDF document as current form. |
[in] | field_name | Field name. It should not be an empty string. |
[in] | field_type | Field type. Please refer to values starting from com.foxit.sdk.pdf.interform.Field.e_TypePushButton and this should be one of these values except com.foxit.sdk.pdf.interform.Field.e_TypeSignature . If this is com.foxit.sdk.pdf.interform.Field.e_TypeSignature , this function will throw exception com.foxit.sdk.common.Constants.e_ErrUnsupported . |
[in] | rect | Rectangle of the new form control which specifies the position in PDF page. It should be in PDF coordinate system. |
synchronized void com.foxit.sdk.pdf.interform.Form.delete | ( | ) |
Clean up related resources immediately.
Reimplemented from com.foxit.sdk.common.Base.
boolean com.foxit.sdk.pdf.interform.Form.exportToCSV | ( | StreamCallback | csv_file, |
String | pdf_file_name, | ||
boolean | is_append | ||
) | throws com.foxit.sdk.PDFException |
Export the form data to a CSV file.
[in] | csv_file | A com.foxit.sdk.common.fxcrt.StreamCallback object which is implemented by user to save form data to a CSV file. This should not be null. Please do not use append mode in writing callback functions. |
[in] | pdf_file_name | File name of current PDF document. This file name will be written into the CSV file. This can be an empty string. |
[in] | is_append | A boolean value used to decide whether the form data is appended to the CSV file if the CSV file exists: true means to append form data to an existed CSV file, while false means not. |
boolean com.foxit.sdk.pdf.interform.Form.exportToCSV | ( | String | csv_file_path, |
String | pdf_file_name, | ||
boolean | is_append | ||
) | throws com.foxit.sdk.PDFException |
Export the form data to a CSV file.
[in] | csv_file_path | A full file path of a CSV file. This specifies the CSV file that form data will be exported to. This should not be an empty string. |
[in] | pdf_file_name | File name of current PDF document. This file name will be written into the CSV file. This can be an empty string. |
[in] | is_append | A boolean value used to decide whether the form data is appended to the CSV file if the CSV file exists: true means to append form data to an existed CSV file, while false means not. |
boolean com.foxit.sdk.pdf.interform.Form.exportToHTML | ( | FileWriterCallback | html_file, |
FieldArray | field_array, | ||
boolean | is_include | ||
) | throws com.foxit.sdk.PDFException |
Export data of specified form fields to an HTML file.
[in] | html_file | A com.foxit.sdk.common.fxcrt.FileWriterCallback object which is implemented by user to save data of specified form fields to an HTML file. This should not be null. |
[in] | field_array | An array of form fields. Parameter is_include will decide whether data of these form fields are to exported or not. If this is an empty array, that means data of all form fields would be exported. |
[in] | is_include | A boolean value used to decide whether data of specified form fields are to be exported or not: true means data of specified form fields are to be exported, while false means data of specified form fields are not to be exported. |
boolean com.foxit.sdk.pdf.interform.Form.exportToHTML | ( | String | html_file_path, |
FieldArray | field_array, | ||
boolean | is_include | ||
) | throws com.foxit.sdk.PDFException |
Export data of specified form fields to an HTML file.
[in] | html_file_path | A full file path of an HTML file, to which data of specified form fields will be exported. This should not be an empty string. |
[in] | field_array | An array of form fields. Parameter is_include will decide whether data of these form fields are to exported or not. If this is an empty array, that means data of all form fields would be exported. |
[in] | is_include | A boolean value used to decide whether data of specified form fields are to be exported or not: true means data of specified form fields are to be exported, while false means data of specified form fields are not to be exported. |
boolean com.foxit.sdk.pdf.interform.Form.exportToTXT | ( | FileWriterCallback | txt_file, |
FieldArray | field_array, | ||
boolean | is_include | ||
) | throws com.foxit.sdk.PDFException |
Export data of specified form fields to a TXT file.
[in] | txt_file | A com.foxit.sdk.common.fxcrt.FileWriterCallback object which is implemented by user to save data of specified form fields to a TXT file. This should not be null. |
[in] | field_array | An array of form fields. Parameter is_include will decide whether data of these form fields are to exported or not. If this is an empty array, that means data of all form fields would be exported. |
[in] | is_include | A boolean value used to decide whether data of specified form fields are to be exported or not: true means data of specified form fields are to be exported, while false means data of specified form fields are not to be exported. |
boolean com.foxit.sdk.pdf.interform.Form.exportToTXT | ( | String | txt_file_path, |
FieldArray | field_array, | ||
boolean | is_include | ||
) | throws com.foxit.sdk.PDFException |
Export data of specified form fields to a TXT file.
[in] | txt_file_path | A full file path of a TXT file, to which data of specified form fields will be exported. This should not be an empty string. |
[in] | field_array | An array of form fields. Parameter is_include will decide whether data of these form fields are to exported or not. If this is an empty array, that means data of all form fields would be exported. |
[in] | is_include | A boolean value used to decide whether data of specified form fields are to be exported or not: true means data of specified form fields are to be exported, while false means data of specified form fields are not to be exported. |
boolean com.foxit.sdk.pdf.interform.Form.exportToXML | ( | FileWriterCallback | xml_file, |
FieldArray | field_array, | ||
boolean | is_include | ||
) | throws com.foxit.sdk.PDFException |
Export data of specified form fields to an XML file.
[in] | xml_file | A com.foxit.sdk.common.fxcrt.FileWriterCallback object which is implemented by user to save data of specified form fields to an XML file. This should not be null. |
[in] | field_array | An array of form fields. Parameter is_include will decide whether data of these form fields are to exported or not. If this is an empty array, that means data of all form fields would be exported. |
[in] | is_include | A boolean value used to decide whether data of specified form fields are to be exported or not: true means data of specified form fields are to be exported, while false means data of specified form fields are not to be exported. |
boolean com.foxit.sdk.pdf.interform.Form.exportToXML | ( | String | file_path | ) | throws com.foxit.sdk.PDFException |
Export the form data to an XML file.
[in] | file_path | A full file_path of an XML file. This specifies the XML file that form data will be exported to. |
boolean com.foxit.sdk.pdf.interform.Form.exportToXML | ( | String | file_path, |
FieldArray | field_array, | ||
boolean | is_include | ||
) | throws com.foxit.sdk.PDFException |
Export data of specified form fields to an XML file.
[in] | file_path | A full file_path of an XML file, to which data of specified form fields will be exported. |
[in] | field_array | An array of form fields. Parameter is_include will decide whether data of these form fields are to exported or not. If this is an empty array, that means data of all form fields would be exported. |
[in] | is_include | A boolean value used to decide whether data of specified form fields are to be exported or not: true means data of specified form fields are to be exported, while false means data of specified form fields are not to be exported. |
void com.foxit.sdk.pdf.interform.Form.fixPageFields | ( | int | page_index | ) | throws com.foxit.sdk.PDFException |
Fix the fields which are in a PDF page but cannot be counted by current form object.
It may cost much time if there are many fields in the specified page.
[in] | page_index | The page index. Valid range: from 0 to (count-1). count is returned by function PDFDoc.getPageCount . |
int com.foxit.sdk.pdf.interform.Form.getAlignment | ( | ) | throws com.foxit.sdk.PDFException |
Get the alignment value which is used as document-wide default value.
Alignment is a property for variable text. It is only applicable for text field, list box and combo box, which may contain variable text as their content.
If a text field or list box has its own alignment value, the document-wide default alignment value will be ignored; otherwise, the document-wide default value will be used for the text field or list box.
Control com.foxit.sdk.pdf.interform.Form.getControl | ( | PDFPage | page, |
int | index | ||
) | throws com.foxit.sdk.PDFException |
Get a form control by index, in a specified PDF page.
[in] | page | A valid PDF page object. It should belong to the same PDF document as current form. |
[in] | index | Index of form control to be retrieved. Valid range: from 0 to (count-1). count is returned by function Field.getControlCount with same parameter page. |
Control com.foxit.sdk.pdf.interform.Form.getControlAtDevicePoint | ( | PDFPage | page, |
PointF | point, | ||
float | tolerance, | ||
int | type, | ||
Matrix2D | matrix | ||
) | throws com.foxit.sdk.PDFException |
Get the form control at a specified position, in device coordinate system.
[in] | page | A valid PDF page object. It should be in the same document as current form. |
[in] | point | A position, in device coordinate system. |
[in] | tolerance | Tolerance value. Valid range: 0.0f to 30.0f. |
[in] | type | The field type whose form control will be retrieved. Please refer to values starting from com.foxit.sdk.pdf.interform.Field.e_TypeUnknown and this should be one of these values. com.foxit.sdk.pdf.interform.Field.e_TypeUnknown means not to care about the field type and just to retrieve the first form control at the specified position. |
[in] | matrix | A transformation matrix. Usually this is returned by function pdf.PDFPage.getDisplayMatrix . If this is null, current function will have the same feature as function Form.getControlAtPoint . |
Control com.foxit.sdk.pdf.interform.Form.getControlAtPoint | ( | PDFPage | page, |
PointF | point, | ||
float | tolerance, | ||
int | type | ||
) | throws com.foxit.sdk.PDFException |
Get the form control at a specified position, in PDF coordinate system.
[in] | page | A valid PDF page object. It should be in the same document as current form. |
[in] | point | A position, in PDF coordinate system. |
[in] | tolerance | Tolerance value. Valid range: 0.0f to 30.0f. |
[in] | type | The field type whose form control will be retrieved. Please refer to values starting from com.foxit.sdk.pdf.interform.Field.e_TypeUnknown and this should be one of these values. com.foxit.sdk.pdf.interform.Field.e_TypeUnknown means not to care about the field type and just to retrieve the first form control at the specified position. |
int com.foxit.sdk.pdf.interform.Form.getControlCount | ( | PDFPage | page | ) | throws com.foxit.sdk.PDFException |
Get count of form controls in a specified PDF page.
[in] | page | A valid PDF page object. It should belong to the same PDF document as current form. |
DefaultAppearance com.foxit.sdk.pdf.interform.Form.getDefaultAppearance | ( | ) | throws com.foxit.sdk.PDFException |
Get the default appearance data.
PDFDictionary com.foxit.sdk.pdf.interform.Form.getDict | ( | ) | throws com.foxit.sdk.PDFException |
Get the dictionary of current object.
PDFDoc com.foxit.sdk.pdf.interform.Form.getDocument | ( | ) | throws com.foxit.sdk.PDFException |
Get the PDF document, with which current form object is associated.
Field com.foxit.sdk.pdf.interform.Form.getField | ( | int | index, |
String | filter | ||
) | throws com.foxit.sdk.PDFException |
Get a form field by index, whose names satisfy the specified name filter.
[in] | index | Index of form field to be retrieved. Valid range: from 0 to (count-1). count is returned by function Form.getFieldCount with same parameter filter. |
[in] | filter | A filter string. If this is an empty string, that means to count all form fields; if this is valid, that means to count those form fields whose names are partially matched parameter filter. For example, if parameter filter is "text1", the filter will match text1.0, text1.2.0, etc; but not match test10 or test11.1. |
int com.foxit.sdk.pdf.interform.Form.getFieldCount | ( | String | filter | ) | throws com.foxit.sdk.PDFException |
Get the count of form fields, whose names satisfy the specified name filter.
[in] | filter | A filter string. If this is an empty string, that means to count all form fields; if this is valid, that means to count those form fields whose names are partially matched parameter filter. For example, if parameter filter is "text1", the filter will match text1.0, text1.2.0, etc; but not match test10 or test11.1. |
FieldArray com.foxit.sdk.pdf.interform.Form.getFieldsInCalculationOrder | ( | ) | throws com.foxit.sdk.PDFException |
Get an array of form fields in calculation order.
The calculation order defines the order in which the values of fields will be recalculated when value of any field is changed. Usually, these fields have calculation actions.
Filler com.foxit.sdk.pdf.interform.Form.getFormFiller | ( | ) | throws com.foxit.sdk.PDFException |
Get the form filler.
boolean com.foxit.sdk.pdf.interform.Form.importFromXML | ( | String | file_path | ) | throws com.foxit.sdk.PDFException |
Import the form data from an XML file.
[in] | file_path | A full file_path of an existing XML file. This specifies the XML file that form data will be imported from. |
boolean com.foxit.sdk.pdf.interform.Form.isEmpty | ( | ) |
Check whether current object is empty or not.
When the current object is empty, that means current object is useless.
boolean com.foxit.sdk.pdf.interform.Form.moveControl | ( | Control | control, |
String | field_name | ||
) | throws com.foxit.sdk.PDFException |
Move the control to a field specified by field name.
Operation of current function for different cases:
[in] | control | A valid form control object. |
[in] | field_name | A field name. It should not be an empty string. |
boolean com.foxit.sdk.pdf.interform.Form.needConstructAppearances | ( | ) | throws com.foxit.sdk.PDFException |
Check whether to construct appearance when loading form controls.
void com.foxit.sdk.pdf.interform.Form.removeControl | ( | Control | control | ) | throws com.foxit.sdk.PDFException |
Remove a form control. (Not support to remove a form control from a signature field)
If the specified form control is the only form control of related form field, the related form field will be removed as well.
[in] | control | A form control to be removed. If the field type of related form field is com.foxit.sdk.pdf.interform.Field.e_TypeSignature , this function will throw exception com.foxit.sdk.common.Constants.e_ErrUnsupported . |
void com.foxit.sdk.pdf.interform.Form.removeField | ( | Field | field | ) | throws com.foxit.sdk.PDFException |
Remove a form field. (Not support signature field)
If the form field appears on more than one PDF page, all representations will be removed.
If user wants to remove a signature field, please use function pdf.PDFDoc.removeSignature instead of current function.
[in] | field | A form field to be removed. If the field type is com.foxit.sdk.pdf.interform.Field.e_TypeSignature , this function will throw exception com.foxit.sdk.common.Constants.e_ErrUnsupported . |
boolean com.foxit.sdk.pdf.interform.Form.renameField | ( | Field | field, |
String | new_field_name | ||
) | throws com.foxit.sdk.PDFException |
Rename a field with a new name.
[in] | field | A valid form field object. |
[in] | new_field_name | A new field name. It should not be an empty string. |
boolean com.foxit.sdk.pdf.interform.Form.reset | ( | ) | throws com.foxit.sdk.PDFException |
Reset data of all fields (except signature fields) to their default value.
void com.foxit.sdk.pdf.interform.Form.setAlignment | ( | int | alignment | ) | throws com.foxit.sdk.PDFException |
Set alignment value which is used as document-wide default value.
Alignment is a property for variable text. It is only applicable for text field, list box and combo box, which may contain variable text as their content.
If a text field or list box has its own alignment value, the document-wide default alignment value will be ignored; otherwise, the document-wide default value will be used for the text field or list box.
[in] | alignment | The new default alignment type of variable text. Please refer to values starting from com.foxit.sdk.common.Constants.e_AlignmentLeft and this should be one of these values. If other values is used to set, com.foxit.sdk.common.Constants.e_AlignmentLeft will be used by default. |
void com.foxit.sdk.pdf.interform.Form.setConstructAppearances | ( | boolean | need_construct | ) | throws com.foxit.sdk.PDFException |
Set a flag that specifies whether to construct appearances when loading form controls.
[in] | need_construct | true means to construct appearances when loading form controls, and false means not. |
void com.foxit.sdk.pdf.interform.Form.setDefaultAppearance | ( | DefaultAppearance | default_ap | ) | throws com.foxit.sdk.PDFException |
Set default appearance data.
[in] | default_ap | The new default appearance. flags of input data can be used to decide which information is/are to be updated with the new data; for those no updated data, they will keep to use old data. If text_size of input default appearance data is 0, that means the text size should be calculated automatically. |
void com.foxit.sdk.pdf.interform.Form.setFieldsInCalculationOrder | ( | FieldArray | field_array | ) | throws com.foxit.sdk.PDFException |
Set an array of form fields in calculation order.
The calculation order defines the order in which the values of fields will be recalculated when value of any field is changed. Usually, these fields have calculation actions.
[in] | field_array | An array of form fields to specify the new calculation order. |
boolean com.foxit.sdk.pdf.interform.Form.validateFieldName | ( | int | type, |
String | field_name | ||
) | throws com.foxit.sdk.PDFException |
Validate whether a field name can be used for a new field in specified field type.
This method can be used to check whether a field name can be used for a new field in specified field type. User is recommended to call this function before using function Form.addControl to add a new field with a new control.
[in] | type | Field type, for which the input field name will be validated. |
[in] | field_name | A string value. It should not be an empty string. |