Foxit PDF SDK
|
Public Member Functions | |
Signature (Field field) | |
Constructor, with parent class object. More... | |
Signature (PDFDoc document, PDFDictionary sig_field_dict) | |
Constructor, from signature field dictionary. More... | |
boolean | clearSignedData () throws com.foxit.sdk.PDFException |
Clear the data and appearance if current signature is singed and verified valid. More... | |
int | getAppearanceFlags () throws com.foxit.sdk.PDFException |
Get signature appearance flags. More... | |
Bitmap | getBitmap () throws com.foxit.sdk.PDFException |
Get a bitmap which is used for the signature appearance. More... | |
boolean | getByteRangeArray (int[] out_byte_range_array) throws com.foxit.sdk.PDFException |
Get the byte ranges data, including 4 elements. More... | |
String | getCert (int index) throws com.foxit.sdk.PDFException |
Get a certificate from current signature's certificate chain by index. More... | |
int | getCertCount () throws com.foxit.sdk.PDFException |
Get the count of certificates in current signature's certificate chain. More... | |
String | getCertificateInfo (String key) throws com.foxit.sdk.PDFException |
Get certificate information. More... | |
int | getDocPermission () throws com.foxit.sdk.PDFException |
Get document permission for current signature. More... | |
PDFDoc | getDocument () throws com.foxit.sdk.PDFException |
Get the PDF document, which current signature belongs to. More... | |
int | getFieldMDPAction () throws com.foxit.sdk.PDFException |
Get FieldMDP("MDP" means modification detection and prevention) action type. More... | |
WStringArray | getFieldMDPActionFields () throws com.foxit.sdk.PDFException |
Get the field name array which is used for FieldMDP action. More... | |
String | getFilter () throws com.foxit.sdk.PDFException |
Get filter. More... | |
String | getKeyLabel (int label_name) throws com.foxit.sdk.PDFException |
Get the string for specified key label. More... | |
String | getKeyValue (int key) throws com.foxit.sdk.PDFException |
Get the string value for specified key name. More... | |
int | getPAdESLevel () throws com.foxit.sdk.PDFException |
Get PAdES level. More... | |
PDFDictionary | getSignatureDict () throws com.foxit.sdk.PDFException |
Get signature dictionary. More... | |
int | getSignatureType () throws com.foxit.sdk.PDFException |
Get signature type. More... | |
PDFDoc | getSignedVersionDocument (String file_path) throws com.foxit.sdk.PDFException |
Get the PDF document in the signed version in which current signature was signed. More... | |
DateTime | getSignTime () throws com.foxit.sdk.PDFException |
Get time of signing. More... | |
int | getState () throws com.foxit.sdk.PDFException |
Get current state. More... | |
String | getSubFilter () throws com.foxit.sdk.PDFException |
Get sub filter. More... | |
boolean | isEmpty () |
Check whether current object is empty or not. More... | |
boolean | isSigned () throws com.foxit.sdk.PDFException |
Check whether current signature is signed or not. More... | |
boolean | isTimeStamp () throws com.foxit.sdk.PDFException |
Check if current signature is a time stamp signature. More... | |
void | setAppearanceContent (String appearance_content) throws com.foxit.sdk.PDFException |
Set customized appearance content (as low level drawing operation commands) for signed signature appearance. More... | |
void | setAppearanceFlags (int appearance_flags) throws com.foxit.sdk.PDFException |
Set signature appearance flags. More... | |
void | setBitmap (Bitmap bitmap) throws com.foxit.sdk.PDFException |
Set a bitmap for the signature appearance. More... | |
void | setCertChain (WStringArray cert_chain) throws com.foxit.sdk.PDFException |
Set a certificate chain. More... | |
void | setDefaultContentsLength (int default_length) throws com.foxit.sdk.PDFException |
Set the default length of signature contents which represents signature value (known as signed data). More... | |
void | setDocPermission (int permission) throws com.foxit.sdk.PDFException |
Set document permission for current signature. More... | |
void | setFieldMDPActionFields (int action, WStringArray field_array) throws com.foxit.sdk.PDFException |
Set FieldMDP("MDP" means modification detection and prevention) action names array. More... | |
void | setFilter (String filter) throws com.foxit.sdk.PDFException |
Set filter. More... | |
void | setImage (Image image, int frame_index) throws com.foxit.sdk.PDFException |
Set an image for the signature appearance, with a specified frame index. More... | |
void | setImage (String file_path, int frame_index) throws com.foxit.sdk.PDFException |
Set an image for the signature appearance, with a specified frame index. More... | |
void | setKeyLabel (int label_name, String label_value) throws com.foxit.sdk.PDFException |
Set the string for specified key label. More... | |
void | setKeyValue (int key, String value) throws com.foxit.sdk.PDFException |
Set the string value for specified key name. More... | |
void | setSignTime (DateTime sign_time) throws com.foxit.sdk.PDFException |
Set time of signing. More... | |
void | setSubFilter (String sub_filter) throws com.foxit.sdk.PDFException |
Set sub filter. More... | |
Progressive | startSign (String cert_path, byte[] cert_password, int digest_algorithm, String save_path, java.lang.Object client_data, PauseCallback pause) throws com.foxit.sdk.PDFException |
Start signing current signature if current signature is unsigned. More... | |
Progressive | startSign (StreamCallback cert_file_stream, byte[] cert_password, int digest_algorithm, String save_path, java.lang.Object client_data, PauseCallback pause) throws com.foxit.sdk.PDFException |
Start signing current signature if current signature is unsigned. More... | |
Progressive | startSign (String cert_path, byte[] cert_password, int digest_algorithm, StreamCallback stream_callback, java.lang.Object client_data, PauseCallback pause) throws com.foxit.sdk.PDFException |
Start signing current signature if current signature is unsigned. More... | |
Progressive | startSign (StreamCallback cert_file_stream, byte[] cert_password, int digest_algorithm, StreamCallback stream_callback, java.lang.Object client_data, PauseCallback pause) throws com.foxit.sdk.PDFException |
Start signing current signature if current signature is unsigned. More... | |
Progressive | startVerify (java.lang.Object client_data, PauseCallback pause) throws com.foxit.sdk.PDFException |
Start verifying the intergrity of current signature if current signature is signed. More... | |
![]() | |
Field (PDFDoc document, PDFDictionary field_dict) | |
Constructor, from field dictionary. More... | |
Field (Field field) | |
Constructor, with another form field object. More... | |
int | getAlignment () throws com.foxit.sdk.PDFException |
Get the alignment value. More... | |
String | getAlternateName () throws com.foxit.sdk.PDFException |
Get alternate name. More... | |
Control | getControl (int index) throws com.foxit.sdk.PDFException |
Get a form control by index. More... | |
Control | getControl (PDFPage page, int index) throws com.foxit.sdk.PDFException |
Get a form control by index, in a specified PDF page. More... | |
int | getControlCount () throws com.foxit.sdk.PDFException |
Get count of form controls. 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... | |
String | getDefaultValue () throws com.foxit.sdk.PDFException |
Get default value. More... | |
PDFObject | getDefaultValueObj () throws com.foxit.sdk.PDFException |
Get the PDF object of field's default value. More... | |
PDFDictionary | getDict () throws com.foxit.sdk.PDFException |
Get the PDF dictionary of current object. More... | |
int | getFlags () throws com.foxit.sdk.PDFException |
Get field flags. More... | |
PDFObject | getInheritedAttribute (String attribute_name) throws com.foxit.sdk.PDFException |
Get the PDF object for specified attribute which may be inherited from the ancestor node in the field tree. More... | |
String | getMappingName () throws com.foxit.sdk.PDFException |
Get mapping name. More... | |
int | getMaxLength () throws com.foxit.sdk.PDFException |
Get maximum length of the field's text, in characters. More... | |
String | getName () throws com.foxit.sdk.PDFException |
Get field name. More... | |
ChoiceOptionArray | getOptions () throws com.foxit.sdk.PDFException |
Get options of list box or combo box. More... | |
int | getTopVisibleIndex () throws com.foxit.sdk.PDFException |
Get top index of option for scrollable list boxes. More... | |
int | getType () throws com.foxit.sdk.PDFException |
Get field type. More... | |
String | getValue () throws com.foxit.sdk.PDFException |
Get value. More... | |
PDFObject | getValueObj () throws com.foxit.sdk.PDFException |
Get the PDF object of field's value. More... | |
boolean | isEmpty () |
Check whether current object is empty or not. More... | |
boolean | reset () throws com.foxit.sdk.PDFException |
Reset data in current field to its default value. (Not support signature field) More... | |
void | setAlignment (int alignment) throws com.foxit.sdk.PDFException |
Set alignment property of a form, as a document-wide default value. (Not support signature field) More... | |
void | setAlternateName (String alternate_name) throws com.foxit.sdk.PDFException |
Set alternate name. (Not support signature field) More... | |
void | setDefaultAppearance (DefaultAppearance default_ap) throws com.foxit.sdk.PDFException |
Set default appearance data. More... | |
void | setDefaultValue (String value) throws com.foxit.sdk.PDFException |
Set default value. More... | |
void | setFlags (int flags) throws com.foxit.sdk.PDFException |
Set field flags. More... | |
void | setMappingName (String name) throws com.foxit.sdk.PDFException |
Set mapping name. (Not support signature field) More... | |
void | setMaxLength (int max_length) throws com.foxit.sdk.PDFException |
Set maximum length of the field's text, in characters. More... | |
void | setOptions (ChoiceOptionArray option_array) throws com.foxit.sdk.PDFException |
Set options of list box or combo box. More... | |
void | setTopVisibleIndex (int index) throws com.foxit.sdk.PDFException |
Set top index for scrollable list boxes. More... | |
void | setValue (String value) throws com.foxit.sdk.PDFException |
Set value. More... | |
Static Public Attributes | |
static final int | e_APFlagBitmap = 0x0080 |
If set, show bitmap on signature appearance. | |
static final int | e_APFlagDN = 0x0010 |
If set, show distinguish name on signature appearance. | |
static final int | e_APFlagFoxitFlag = 0x0001 |
If set, show Foxit flag on signature appearance. | |
static final int | e_APFlagLabel = 0x0002 |
If set, show label on signature appearance. | |
static final int | e_APFlagLocation = 0x0020 |
If set, show location on signature appearance. | |
static final int | e_APFlagReason = 0x0004 |
If set, show reason on signature appearance. | |
static final int | e_APFlagSigner = 0x0040 |
If set, show signer on signature appearance. | |
static final int | e_APFlagSigningTime = 0x0008 |
If set, show signing time on signature appearance. | |
static final int | e_APFlagText = 0x0100 |
If set, show text content on signature appearance. | |
static final int | e_DigestSHA1 = 0 |
Signature digest algorithm: sha1 algorithm. | |
static final int | e_DigestSHA256 = 1 |
Signature digest algorithm: sha256 algorithm. | |
static final int | e_DigestSHA384 = 2 |
Signature digest algorithm: sha384 algorithm. | |
static final int | e_DigestSHA512 = 3 |
Signature digest algorithm: sha512 algorithm. | |
static final int | e_DocPermFillingFormAndSigning = 2 |
Permitted changes are filling in forms, instantiating page templates, and signing. Other changes will invalidate the signature. | |
static final int | e_DocPermFillingFormSigningAndAnnotating = 3 |
Permitted changes are the same as for 2, as well as annotation creation, deletion, and modification. Other changes will invalidate the signature. | |
static final int | e_DocPermNoChangesAllowed = 1 |
No changes to the PDF document (which is signed by the signture) are permitted. Any change to this kind of PDF document will invalidate the signature. | |
static final int | e_DocPermUnrestricted = 0 |
No restriction. | |
static final int | e_FieldMDPActionAll = 1 |
All form fields' flags will be set read-only. | |
static final int | e_FieldMDPActionExclude = 3 |
Flags of form fields (except specified form fields) will be set read-only. More... | |
static final int | e_FieldMDPActionInclude = 2 |
Specified form fields' flags will be set read-only. More... | |
static final int | e_FieldMDPActionNone = 0 |
No Field MDP action. | |
static final int | e_KeyNameContactInfo = 3 |
Signature key name: contact information. | |
static final int | e_KeyNameDN = 4 |
Signature key name: distinguish name. | |
static final int | e_KeyNameLocation = 1 |
Signature key name: location. | |
static final int | e_KeyNameReason = 2 |
Signature key name: reason. | |
static final int | e_KeyNameSigner = 0 |
Signature key name: signer. | |
static final int | e_KeyNameText = 5 |
Signature key name: text content. | |
static final int | e_LabelNameDN = 4 |
Signature key name for distinguish name. More... | |
static final int | e_LabelNameLocation = 1 |
Signature label name for location. More... | |
static final int | e_LabelNameReason = 2 |
Signature label name for reason. More... | |
static final int | e_LabelNameSigner = 0 |
Signature label name for signer. More... | |
static final int | e_LabelNameSignTime = 3 |
Signature label name for sign time. More... | |
static final int | e_PAdESLevelBB = 2 |
PAdES level: B-B. | |
static final int | e_PAdESLevelBLT = 4 |
PAdES level: B-LT. | |
static final int | e_PAdESLevelBLTA = 5 |
PAdES level: B-LTA. | |
static final int | e_PAdESLevelBT = 3 |
PAdES level: B-T. | |
static final int | e_PAdESLevelNone = 1 |
PAdES level: none. | |
static final int | e_PAdESLevelNotPAdES = 0 |
Not a PAdES signature. | |
static final int | e_SignatureTypeOrdinary = 0 |
Signature type: ordinary. | |
static final int | e_SignatureTypeTimeStamp = 3 |
Signature type: time stamp. | |
static final int | e_StateCertCannotGetVRI = 0x04000000 |
Cannot get verify relevant information. | |
static final int | e_StateNoSignData = 0x00000200 |
Signature does not have any data for signing. | |
static final int | e_StateSigned = 0x00000002 |
Signed signature. | |
static final int | e_StateUnknown = 0x80000000 |
Unknown signature. | |
static final int | e_StateUnsigned = 0x00000001 |
Unsigned signature. | |
static final int | e_StateVerifyChange = 0x00000080 |
The document has been changed within the scope of the signature. (This indicates that signature is invalid.) | |
static final int | e_StateVerifyChangeIllegal = 0x10000000 |
The document has been changed outside of signature scope, and the changed invalidate the signature. | |
static final int | e_StateVerifyChangeLegal = 0x08000000 |
The document has been changed outside of signature scope, but the changed is permitted. | |
static final int | e_StateVerifyErrorByteRange = 0x00000040 |
Non expected byte range. | |
static final int | e_StateVerifyErrorData = 0x00000010 |
Signature data is destroyed (that means the signature data cannot be parsed properly). | |
static final int | e_StateVerifyIncredible = 0x00000100 |
Signature cannot be trusted (containing aggression). | |
static final int | e_StateVerifyInvalid = 0x00000008 |
Verification state of a signature is invalid. | |
static final int | e_StateVerifyIssueCurrent = 0x00020000 |
The verified issue is current issuer. | |
static final int | e_StateVerifyIssueExpire = 0x00008000 |
Certificate for verifying issuer is expired. | |
static final int | e_StateVerifyIssueRevoke = 0x00004000 |
Certificate for verifying issuer is revoked. | |
static final int | e_StateVerifyIssueUncheck = 0x00010000 |
Not check the issuer. | |
static final int | e_StateVerifyIssueUnknown = 0x00002000 |
Verification state of the issuer is unknown. | |
static final int | e_StateVerifyIssueValid = 0x00001000 |
Verification state of the issuer is valid. | |
static final int | e_StateVerifyNoChange = 0x00000400 |
The document has not been changed within the scope of the signature. | |
static final int | e_StateVerifyNoSupportWay = 0x00000020 |
Unsupported signature. | |
static final int | e_StateVerifyTimestampDoc = 0x00080000 |
The signature is a time stamp signature. | |
static final int | e_StateVerifyTimestampExpire = 0x00400000 |
Verification state of the time stamp is expired. | |
static final int | e_StateVerifyTimestampInvalid = 0x00200000 |
Verification state of the time stamp is invalid. | |
static final int | e_StateVerifyTimestampIssueUnknown = 0x00800000 |
Verification state of the time stamp issuer is unknown. | |
static final int | e_StateVerifyTimestampIssueValid = 0x01000000 |
Verification state of the time stamp issuer is valid. | |
static final int | e_StateVerifyTimestampNone = 0x00040000 |
No time stamp or not check time stamp. | |
static final int | e_StateVerifyTimestampTimeBefore = 0x02000000 |
Verification state of the time stamp time is valid, since the times is before the expiration date. | |
static final int | e_StateVerifyTimestampValid = 0x00100000 |
Verification state of the time stamp is valid. | |
static final int | e_StateVerifyValid = 0x00000004 |
Verification state of a signature is valid. | |
![]() | |
static final int | e_FlagButtonNoToggleToOff = 0x100 |
(Only useful for radio button) If set, exactly one radio button must be selected at all times; clicking the currently selected button has no effect. If clear, clicking the selected button deselects it, leaving no button selected. | |
static final int | e_FlagButtonRadiosInUnison = 0x200 |
(Only useful for radio button) If set, a group of radio buttons within a radio button field that use the same value for the on state will turn on and off in unison; that is if one is checked, they are all checked. If clear, the buttons are mutually exclusive. | |
static final int | e_FlagChoiceMultiSelect = 0x100 |
(Only useful for list box) If set, more than one items may be selected simultaneously; if clear, no more than one item at a time may be selected. | |
static final int | e_FlagComboEdit = 0x100 |
(Only useful for combo box) If set, the combo box includes an editable text control with a drop-down list, if clear, it includes only a drop-down list. | |
static final int | e_FlagNoExport = 0x04 |
if set, the field must not be exported by a submit-form action. | |
static final int | e_FlagReadOnly = 0x01 |
If set, the user may not change the value of the field. Any associated widget annotations will not interact with the user; that is, they will not respond to mouse clicks or change their appearance in response to mouse motions. This flag is useful for fields whose values are computed or imported from a database. | |
static final int | e_FlagRequired = 0x02 |
If set, the field must have a value at the time it is exported by a submit-form action. | |
static final int | e_FlagTextComb = 0x2000 |
(Only useful for text field) If set, use combs. More... | |
static final int | e_FlagTextDoNotScroll = 0x1000 |
(Only useful for text field) If set, the field does not scroll (horizontally for single-line fields, vertically for multiple-line fields) to accommodate more text than fits within its annotation rectangle. Once the field is full, no further text is accepted. | |
static final int | e_FlagTextFileSelect = 0x400 |
(Only useful for text field) If set, the text entered in the field represents the pathname of a file whose contents are to be submitted as the value of the field. | |
static final int | e_FlagTextMultiline = 0x100 |
(Only useful for text field) If set, the text field can contain multiple lines of text; if clear, the field's text is restricted to a single line. | |
static final int | e_FlagTextNoSpellCheck = 0x800 |
(Only useful for text field) If set, text entered in the field is not spell-checked. | |
static final int | e_FlagTextPassword = 0x200 |
(Only useful for text field) If set, the field is intended for entering a secure password that should not be echoed visibly to the screen. Characters typed from the keyboard should instead be echoed in some unreadable form, such as asterisks or bullet characters. More... | |
static final int | e_TypeCheckBox = 2 |
Form field type: check box. | |
static final int | e_TypeComboBox = 4 |
Form field type: combo box. | |
static final int | e_TypeListBox = 5 |
Form field type: list box. | |
static final int | e_TypePushButton = 1 |
Form field type: push button. | |
static final int | e_TypeRadioButton = 3 |
Form field type: radio button. | |
static final int | e_TypeSignature = 7 |
Form field type: signature field. | |
static final int | e_TypeTextField = 6 |
Form field type: text field. | |
static final int | e_TypeUnknown = 0 |
Form field type: unknown. | |
A digital signature (PDF 1.3) can be used to authenticate the identity of a user and the document's contents. It stores information about the signer and the state of the document when it was signed. The signature is contained in a signature field, as a type of form field, so class Signature is derived from class com.foxit.sdk.pdf.interform.Field . A signature object can be retrieved/added by following functions:
In a signature, filter and sub filter keys are used to specify the filter and sub filter of signature callback object which will be used to sign and verify the signature. Foxit PDF SDK has default signature callbacks for following filter and sub filter:
For sub filter "ETSI.CAdES.detached" and sub filter "ETSI.RFC3161", please ensure a default time stmap server has been set to TimeStampServerMgr if default signature callbacks for them will be used to do signing. For other filter and sub filter or if user wants to use customized signature callback for above filter and sub filter, user should prepare customized signature callback and register the callback to Foxit PDF SDK by function common.Library.registerSignatureCallback .
This class offers functions to get/set signature information/properties, sign or verify a signature, and so on. For example:
Before signing an unsigned signature, user can call following functions to set information for signing and signed appearance:
If an unsigned signature has been set some information for signing, but the document is saved directly or closed without signing the signature, these data (including filter and sub filter) will be lost in the saved document or in the closed document. When the document is opened again, the unsigned signature needs to be specified at least filter and sub filter for signing; otherwise, this signature cannot be signed.
com.foxit.sdk.pdf.Signature.Signature | ( | Field | field | ) |
Constructor, with parent class object.
[in] | field | Parent class object. |
com.foxit.sdk.pdf.Signature.Signature | ( | PDFDoc | document, |
PDFDictionary | sig_field_dict | ||
) |
Constructor, from signature field dictionary.
[in] | document | A valid PDF document. |
[in] | sig_field_dict | A PDF dictionary which represents a signature field. It should belong to the PDF document specified by parameter document; |
boolean com.foxit.sdk.pdf.Signature.clearSignedData | ( | ) | throws com.foxit.sdk.PDFException |
Clear the data and appearance if current signature is singed and verified valid.
This function is used for a signed and valid signature.
Attention: From 7.0, this function is only used to verify the intergrity of a signature. To check if a signature is valid or not, please refer to class LTVVerifier .
int com.foxit.sdk.pdf.Signature.getAppearanceFlags | ( | ) | throws com.foxit.sdk.PDFException |
Get signature appearance flags.
Signature appearance flags indicate which information will be shown. Currently, this is only useful after Signature.setAppearanceFlags is set successfully. For a signature gotten from PDF document, the return value of this function would be useless.
Bitmap com.foxit.sdk.pdf.Signature.getBitmap | ( | ) | throws com.foxit.sdk.PDFException |
Get a bitmap which is used for the signature appearance.
boolean com.foxit.sdk.pdf.Signature.getByteRangeArray | ( | int [] | out_byte_range_array | ) | throws com.foxit.sdk.PDFException |
Get the byte ranges data, including 4 elements.
This function is used for a signed signature to retrieve its byte range for digest calculation. The array of byte ranges contains 4 elements. These 4 elements are always in pairs of integers (starting byte offset, length in bytes), describing the exact byte range for the digest calculation.
Please refer to <PDF Reference 1.7> Section 8.7 Digital Signatures for more details.
[out] | out_byte_range_array | Output parameter that receives data of byte ranges. Please ensure this array can contain 4 elements. |
String com.foxit.sdk.pdf.Signature.getCert | ( | int | index | ) | throws com.foxit.sdk.PDFException |
Get a certificate from current signature's certificate chain by index.
This function is recommended to be used before verifying a signature. When sub filter of current signature is "adbe.x509.rsa_sha1", application needs to call this function to get verified public certificate before verifying signature. The first certificate in certificate chain is the signing certificate, and it can be used to verify the signature.
[in] | index | The index of certificate to be gotten. Valid range: from 0 to (count-1). count is returned by function Signature.getCertCount . |
int com.foxit.sdk.pdf.Signature.getCertCount | ( | ) | throws com.foxit.sdk.PDFException |
Get the count of certificates in current signature's certificate chain.
This function is recommended to be used before verifying a signature. When sub filter of current signature is "adbe.x509.rsa_sha1", application needs to call this function to get the count of certificates in certificate chain and then call function Signature.getCert to get verified public certificate before verifying signature.
String com.foxit.sdk.pdf.Signature.getCertificateInfo | ( | String | key | ) | throws com.foxit.sdk.PDFException |
Get certificate information.
This function is used for a signed signature. Currently, this function only supports for iOS and android platform.
[in] | key | Certificate key string. Currently it can be one of the following keys:
|
int com.foxit.sdk.pdf.Signature.getDocPermission | ( | ) | throws com.foxit.sdk.PDFException |
Get document permission for current signature.
PDFDoc com.foxit.sdk.pdf.Signature.getDocument | ( | ) | throws com.foxit.sdk.PDFException |
Get the PDF document, which current signature belongs to.
int com.foxit.sdk.pdf.Signature.getFieldMDPAction | ( | ) | throws com.foxit.sdk.PDFException |
Get FieldMDP("MDP" means modification detection and prevention) action type.
WStringArray com.foxit.sdk.pdf.Signature.getFieldMDPActionFields | ( | ) | throws com.foxit.sdk.PDFException |
Get the field name array which is used for FieldMDP action.
Returned field name array is associated to the FieldMDP action (which can be checked by function Signature.getFieldMDPAction ):
String com.foxit.sdk.pdf.Signature.getFilter | ( | ) | throws com.foxit.sdk.PDFException |
Get filter.
Filter and sub filter are used to specify which registered signature callback object will be used to sign/verify current signature.
String com.foxit.sdk.pdf.Signature.getKeyLabel | ( | int | label_name | ) | throws com.foxit.sdk.PDFException |
Get the string for specified key label.
If current signature is a time stamp signature, this function will always return an empty string.
[in] | label_name | Key label. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_LabelNameSigner and this should be one of these values. |
String com.foxit.sdk.pdf.Signature.getKeyValue | ( | int | key | ) | throws com.foxit.sdk.PDFException |
Get the string value for specified key name.
This function is used to get string value of some key in signature dictionary, such as "Reason", "Location" and so on. Specially,
[in] | key | Key name. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_KeyNameSigner and this should be one of these values. |
int com.foxit.sdk.pdf.Signature.getPAdESLevel | ( | ) | throws com.foxit.sdk.PDFException |
Get PAdES level.
PDFDictionary com.foxit.sdk.pdf.Signature.getSignatureDict | ( | ) | throws com.foxit.sdk.PDFException |
Get signature dictionary.
Signature dictionary is a part of signature field dictionary.
int com.foxit.sdk.pdf.Signature.getSignatureType | ( | ) | throws com.foxit.sdk.PDFException |
Get signature type.
PDFDoc com.foxit.sdk.pdf.Signature.getSignedVersionDocument | ( | String | file_path | ) | throws com.foxit.sdk.PDFException |
Get the PDF document in the signed version in which current signature was signed.
This function is useful when a PDF document has benn signed by serveral signatures and user wants to get the PDF document in which one signature is signed.
[in] | file_path | The full path of the original opened PDF document which current signature belongs to. It should not be an empty string. |
DateTime com.foxit.sdk.pdf.Signature.getSignTime | ( | ) | throws com.foxit.sdk.PDFException |
Get time of signing.
int com.foxit.sdk.pdf.Signature.getState | ( | ) | throws com.foxit.sdk.PDFException |
Get current state.
String com.foxit.sdk.pdf.Signature.getSubFilter | ( | ) | throws com.foxit.sdk.PDFException |
Get sub filter.
Filter and sub filter are used to specify which registered signature callback object will be used to sign/verify current signature.
boolean com.foxit.sdk.pdf.Signature.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.Signature.isSigned | ( | ) | throws com.foxit.sdk.PDFException |
Check whether current signature is signed or not.
boolean com.foxit.sdk.pdf.Signature.isTimeStamp | ( | ) | throws com.foxit.sdk.PDFException |
Check if current signature is a time stamp signature.
void com.foxit.sdk.pdf.Signature.setAppearanceContent | ( | String | appearance_content | ) | throws com.foxit.sdk.PDFException |
Set customized appearance content (as low level drawing operation commands) for signed signature appearance.
This function can only be used for an unsigned signature before calling function Signature.startSign for the unsigned signature.
Once customized appearance content is set, it will be used as the signed appearance. In this case, appearance flags set by Signature.setAppearanceFlags will be ignored and related informations will not be used in appearance – these information are set by: Signature.setSignTime , Signature.setKeyValue (except filter and sub-filter), Signature.setBitmap , Signature.setImage .
If current signature is a time stamp signature, this function will do nothing.
[in] | appearance_content | Customized appearance content. This should be sequence of drawing operation commands to be used for the appearance, for example "10 10 m 20 10 l S". Please refer to <PDF Reference 1.7> P196 for more details. |
void com.foxit.sdk.pdf.Signature.setAppearanceFlags | ( | int | appearance_flags | ) | throws com.foxit.sdk.PDFException |
Set signature appearance flags.
This function is recommended to be used before calling function Signature.startSign for an unsigned signature.
Signature appearance flags indicate which information will be shown in the signed appearance. If customized appearance content has been set by function Signature.setAppearanceContent , appearance flags will be ignored.
If current signature is a time stamp signature, this function will do nothing.
[in] | appearance_flags | Signature appearance flags. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_APFlagFoxitFlag and this should be one or a combination of these values. |
void com.foxit.sdk.pdf.Signature.setBitmap | ( | Bitmap | bitmap | ) | throws com.foxit.sdk.PDFException |
Set a bitmap for the signature appearance.
This function is recommended to be used before calling function Signature.startSign for an unsigned signature. If customized appearance content has been set by function Signature.setAppearanceContent , the bitmap will not be used in signed appearance.
If current signature is a time stamp signature, this function will do nothing.
[in] | bitmap | A bitmap to be set to the appearance. It should be valid. |
void com.foxit.sdk.pdf.Signature.setCertChain | ( | WStringArray | cert_chain | ) | throws com.foxit.sdk.PDFException |
Set a certificate chain.
This function is recommended to be used before signing an unsigned signature. When the signature sub filter is "adbe.x509.rsa_sha1", users need to call this function to set the cert chain to the signature. For other sub filter, this function will return directly without doing anything.
[in] | cert_chain | A string array that represents the certificate chain. |
void com.foxit.sdk.pdf.Signature.setDefaultContentsLength | ( | int | default_length | ) | throws com.foxit.sdk.PDFException |
Set the default length of signature contents which represents signature value (known as signed data).
This function can only be used before function Signature.startSign for an unsigned signature.
Signature contents represent the signature value (known as signed data). When initializing the signature field, the signature contents will be initialized with the default length 7942. When using custom signature callback to sign and verify an unsigned signature, user can call this function to change the default length of signature contents. In this case, user should also ensure that the length of returned signed data in callback function SignatureCallback.sign should not be larger than the default length set by this function.
[in] | default_length | The default length of the signature value (known as signed data), in bytes. It should not be less than 4098. |
void com.foxit.sdk.pdf.Signature.setDocPermission | ( | int | permission | ) | throws com.foxit.sdk.PDFException |
Set document permission for current signature.
This function is only useful for an unsigned signature. If this function is used for a signed signature, nothing will be done.
Some notes about the permission value:
[in] | permission | The document permission. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_DocPermUnrestricted and this should be one of these values. |
void com.foxit.sdk.pdf.Signature.setFieldMDPActionFields | ( | int | action, |
WStringArray | field_array | ||
) | throws com.foxit.sdk.PDFException |
Set FieldMDP("MDP" means modification detection and prevention) action names array.
This function is only useful for an unsigned signature. If this function is used for a signed signature, nothing will be done.
If current signature is signed, this function is invalidate.
[in] | action | FieldMDP action type.Please refer to values starting from com.foxit.sdk.pdf.Signature.e_FieldMDPActionNone and this should be one of these values.
|
[in] | field_array | A field name array used for FieldMDP action. |
void com.foxit.sdk.pdf.Signature.setFilter | ( | String | filter | ) | throws com.foxit.sdk.PDFException |
Set filter.
Filter and sub filter are used to specify which registered signature callback object will be used to sign/verify current signature. User could should set filter and sub filter to use default signature callback in Foxit PDF SDK, or use other filter and sub fitler but please ensure that a signature callback object with non-default filter and sub filter should has been registered in Foxit PDF SDK before signing or verifying current signature. Filter and sub filter for default signature callback are:
[in] | filter | String for filter. It cannot be an empty string. |
void com.foxit.sdk.pdf.Signature.setImage | ( | Image | image, |
int | frame_index | ||
) | throws com.foxit.sdk.PDFException |
Set an image for the signature appearance, with a specified frame index.
This function is recommended to be used before calling function Signature.startSign for an unsigned signature. If customized appearance content has been set by function Signature.setAppearanceContent , the image will not be used in signed appearance.
Input image may contain multiple frames, and only one frame of the image can be set to current signature.
If current signature is a time stamp signature, this function will do nothing.
[in] | image | An image. One of its frames will be set to current signature. This image contains at least one frame and the image type should not be com.foxit.sdk.common.Image.e_Unknown . |
[in] | frame_index | Frame index. Valid range: from 0 to (count-1). count is returned by function common.Image.getFrameCount . |
void com.foxit.sdk.pdf.Signature.setImage | ( | String | file_path, |
int | frame_index | ||
) | throws com.foxit.sdk.PDFException |
Set an image for the signature appearance, with a specified frame index.
This function is recommended to be used before calling function Signature.startSign for an unsigned signature. If customized appearance content has been set by function Signature.setAppearanceContent , the image will not be used in signed appearance.
Input image may contain multiple frames, and only one frame of the image can be set to current signature.
If current signature is a time stamp signature, this function will do nothing.
[in] | file_path | A full path of an existing image file. It should not be an empty string. |
[in] | frame_index | Frame index. Valid range: from 0 to (count-1). count is returned by function common.Image.getFrameCount of input image file. |
void com.foxit.sdk.pdf.Signature.setKeyLabel | ( | int | label_name, |
String | label_value | ||
) | throws com.foxit.sdk.PDFException |
Set the string for specified key label.
This function is recommended to be used before calling function Signature.startSign for an unsigned signature.
This function is used to set string value for custom label of some key in signature dictionary. If no custom label is set, default labels will be used by Foxit PDF SDK. Please refer to comment of values starting from com.foxit.sdk.pdf.Signature.e_LabelNameSigner for more details.
If current signature is a time stamp signature, this function will do nothing.
[in] | label_name | Key label. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_LabelNameSigner and this should be one of these values. |
[in] | label_value | New string value for key label. If this is an empty string, Foxit PDF SDK will use default label. Please refer to comment of values starting from com.foxit.sdk.pdf.Signature.e_LabelNameSigner for more details. |
void com.foxit.sdk.pdf.Signature.setKeyValue | ( | int | key, |
String | value | ||
) | throws com.foxit.sdk.PDFException |
Set the string value for specified key name.
This function is recommended to be used before calling function Signature.startSign for an unsigned signature.
This function is used to set string value of some key in signature dictionary, such as signer, reason, location and so on.
If current signature is a time stamp signature, this function will do nothing.
[in] | key | Key name. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_KeyNameSigner and this should be one of these values. |
[in] | value | New string value. |
void com.foxit.sdk.pdf.Signature.setSignTime | ( | DateTime | sign_time | ) | throws com.foxit.sdk.PDFException |
Set time of signing.
This function is recommended to be used before calling function Signature.startSign for an unsigned signature.
[in] | sign_time | The signing time. |
void com.foxit.sdk.pdf.Signature.setSubFilter | ( | String | sub_filter | ) | throws com.foxit.sdk.PDFException |
Set sub filter.
Filter and sub filter are used to specify which registered signature callback object will be used to sign/verify current signature. User could should set filter and sub filter to use default signature callback in Foxit PDF SDK, or use other filter and sub fitler but please ensure that a signature callback object with non-default filter and sub filter should has been registered in Foxit PDF SDK before signing or verifying current signature. Filter and sub filter for default signature callback are:
[in] | sub_filter | String for sub filter. |
Progressive com.foxit.sdk.pdf.Signature.startSign | ( | String | cert_path, |
byte [] | cert_password, | ||
int | digest_algorithm, | ||
String | save_path, | ||
java.lang.Object | client_data, | ||
PauseCallback | pause | ||
) | throws com.foxit.sdk.PDFException |
Start signing current signature if current signature is unsigned.
This function is used for an unsigned signature. Filter and sub filter keys of current signature specify the name of signature callback object which will be used to sign current signature. So before signing, please ensure current signature has valid filter and sub filter string values. If the filter and sub filter are one of following strings that means to use the default signature callback in Foxit PDF SDK:
For other filter and sub filter or if user wants to use customized signature callback for above filter and sub filter, please ensure a customized signature callback has been registered to Foxit PDF SDK by function common.Library.registerSignatureCallback .
It may take a long time to sign a signature, so Foxit PDF SDK uses a progressive process to do this.
[in] | cert_path | A full path of a certificate file (including file name and extension), which will be used for signing. This can be an empty string if not necessary in custom signature callback. When this file path is not empty, it should be a valid path. If default signature callback is to be used for signing current signature, this can be a PFX certificate file. |
[in] | cert_password | A password string used to open the cert file. If this is an empty string, that means no password is required. |
[in] | digest_algorithm | The algorithm of message digest for signed data. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_DigestSHA1 and this should be one of these values. |
[in] | save_path | A full PDF file path for saving the signing result. The signed document would be saved to another PDF file. |
[in] | client_data | A user-defined object, which will be passed to call back functions in SignatureCallback . This is useless if the default callback object will be used to sign current signature. |
[in] | pause | Pause object which decides if the signing process needs to be paused. This can be null which means not to pause during the signing process. If this is not null, it should be a valid pause object implemented by user. |
Progressive com.foxit.sdk.pdf.Signature.startSign | ( | StreamCallback | cert_file_stream, |
byte [] | cert_password, | ||
int | digest_algorithm, | ||
String | save_path, | ||
java.lang.Object | client_data, | ||
PauseCallback | pause | ||
) | throws com.foxit.sdk.PDFException |
Start signing current signature if current signature is unsigned.
This function is used for an unsigned signature. Filter and sub filter keys of current signature specify the name of signature callback object which will be used to sign current signature. So before signing, please ensure current signature has valid filter and sub filter string values. If the filter and sub filter are one of following strings that means to use the default signature callback in Foxit PDF SDK:
For other filter and sub filter or if user wants to use customized signature callback for above filter and sub filter, please ensure a customized signature callback has been registered to Foxit PDF SDK by function common.Library.registerSignatureCallback .
It may take a long time to sign a signature, so Foxit PDF SDK uses a progressive process to do this.
[in] | cert_file_stream | A com.foxit.sdk.common.fxcrt.StreamCallback object which is implemented by user to access content of a certificate file which will be used for signing. This can be null if not necessary in custom signature callback. If default signature callback is to be used for signing current signature, a PFX certificate file can be used. |
[in] | cert_password | A password string used to open the cert file. If this is an empty string, that means no password is required. |
[in] | digest_algorithm | The algorithm of message digest for signed data. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_DigestSHA1 and this should be one of these values. |
[in] | save_path | A full PDF file path for saving the signing result. The signed document would be saved to another PDF file. |
[in] | client_data | A user-defined object, which will be passed to call back functions in SignatureCallback . This is useless if the default callback object will be used to sign current signature. |
[in] | pause | Pause object which decides if the signing process needs to be paused. This can be null which means not to pause during the signing process. If this is not null, it should be a valid pause object implemented by user. |
Progressive com.foxit.sdk.pdf.Signature.startSign | ( | String | cert_path, |
byte [] | cert_password, | ||
int | digest_algorithm, | ||
StreamCallback | stream_callback, | ||
java.lang.Object | client_data, | ||
PauseCallback | pause | ||
) | throws com.foxit.sdk.PDFException |
Start signing current signature if current signature is unsigned.
This function is used for an unsigned signature. Filter and sub filter keys of current signature specify the name of signature callback object which will be used to sign current signature. So before signing, please ensure current signature has valid filter and sub filter string values. If the filter and sub filter are one of following strings that means to use the default signature callback in Foxit PDF SDK:
For sub filter "ETSI.CAdES.detached" and sub filter "ETSI.RFC3161", please ensure a default time stmap server has been set to TimeStampServerMgr if default signature callbacks for them will be used to do signing. For other filter and sub filter or if user wants to use customized signature callback for above filter and sub filter, please ensure a customized signature callback has been registered to Foxit PDF SDK by function common.Library.registerSignatureCallback .
It may take a long time to sign a signature, so Foxit PDF SDK uses a progressive process to do this.
[in] | cert_path | A full path of a certificate file (including file name and extension), which will be used for signing. This can be an empty string if not necessary in custom signature callback. When this file path is not empty, it should be a valid path. If default signature callback is to be used for signing current signature, this can be a PFX certificate file. |
[in] | cert_password | A password string used to open the cert file. If this is an empty string, that means no password is required. |
[in] | digest_algorithm | The algorithm of message digest for signed data. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_DigestSHA1 and this should be one of these values. |
[in] | stream_callback | A com.foxit.sdk.common.fxcrt.StreamCallback object which is implemented by user to save the signing result. The signed document would be saved to another PDF file. |
[in] | client_data | A user-defined object, which will be passed to call back functions in SignatureCallback . This is useless if the default callback object will be used to sign current signature. |
[in] | pause | Pause object which decides if the signing process needs to be paused. This can be null which means not to pause during the signing process. If this is not null, it should be a valid pause object implemented by user. |
Progressive com.foxit.sdk.pdf.Signature.startSign | ( | StreamCallback | cert_file_stream, |
byte [] | cert_password, | ||
int | digest_algorithm, | ||
StreamCallback | stream_callback, | ||
java.lang.Object | client_data, | ||
PauseCallback | pause | ||
) | throws com.foxit.sdk.PDFException |
Start signing current signature if current signature is unsigned.
This function is used for an unsigned signature. Filter and sub filter keys of current signature specify the name of signature callback object which will be used to sign current signature. So before signing, please ensure current signature has valid filter and sub filter string values. If the filter and sub filter are one of following strings that means to use the default signature callback in Foxit PDF SDK:
For sub filter "ETSI.CAdES.detached" and sub filter "ETSI.RFC3161", please ensure a default time stmap server has been set to TimeStampServerMgr if default signature callbacks for them will be used to do signing. For other filter and sub filter or if user wants to use customized signature callback for above filter and sub filter, please ensure a customized signature callback has been registered to Foxit PDF SDK by function common.Library.registerSignatureCallback .
It may take a long time to sign a signature, so Foxit PDF SDK uses a progressive process to do this.
[in] | cert_file_stream | A com.foxit.sdk.common.fxcrt.StreamCallback object which is implemented by user to access content of a certificate file which will be used for signing. This can be null if not necessary in custom signature callback. If default signature callback is to be used for signing current signature, a PFX certificate file can be used. |
[in] | cert_password | A password string used to open the cert file. If this is an empty string, that means no password is required. |
[in] | digest_algorithm | The algorithm of message digest for signed data. Please refer to values starting from com.foxit.sdk.pdf.Signature.e_DigestSHA1 and this should be one of these values. |
[in] | stream_callback | A com.foxit.sdk.common.fxcrt.StreamCallback object which is implemented by user to save the signing result. The signed document would be saved to another PDF file. |
[in] | client_data | A user-defined object, which will be passed to call back functions in SignatureCallback . This is useless if the default callback object will be used to sign current signature. |
[in] | pause | Pause object which decides if the signing process needs to be paused. This can be null which means not to pause during the signing process. If this is not null, it should be a valid pause object implemented by user. |
Progressive com.foxit.sdk.pdf.Signature.startVerify | ( | java.lang.Object | client_data, |
PauseCallback | pause | ||
) | throws com.foxit.sdk.PDFException |
Start verifying the intergrity of current signature if current signature is signed.
This function is used for a signed signature. Filter and sub filter keys of current signature specify the name of signature callback object which will be used to verify current signature. So before verifying, please ensure: the necessary signature callback object has been registered by function common.Library.registerSignatureCallback . If the filter and sub filter of current signed signature are one of following strings that means to use the default signature callback in Foxit PDF SDK and user does not need to register one for them:
It may take a long time to verify a signature, so Foxit PDF SDK uses a progressive process to do this.
From 7.0, this function is only used to verify the intergrity of a signature. To check if a signature is valid or not, please refer to class LTVVerifier .
[in] | client_data | A user-defined object, which will be passed to call back functions in SignatureCallback . This is useless if the default callback object will be used to verify current signature. |
[in] | pause | Pause object which decides if the verifying process needs to be paused. This can be null which means not to pause during the verifying process. If this is not null, it should be a valid pause object implemented by user. |
|
static |
Flags of form fields (except specified form fields) will be set read-only.
|
static |
Specified form fields' flags will be set read-only.
|
static |
Signature key name for distinguish name.
|
static |
Signature label name for location.
|
static |
Signature label name for reason.
|
static |
Signature label name for signer.
|
static |
Signature label name for sign time.