SignDoc SDK (C)  5.0.0
SIGNDOC_Field Class Reference

One field of a document. More...

#include <SignDocSDK-c.h>

Public Member Functions

struct SIGNDOC_FieldSIGNDOC_Field_new (struct SIGNDOC_Exception **aEx)
 SIGNDOC_Field constructor. More...
 
struct SIGNDOC_FieldSIGNDOC_Field_clone (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aSource)
 Clone a SIGNDOC_Field object. More...
 
void SIGNDOC_Field_delete (struct SIGNDOC_Field *aObj)
 SIGNDOC_Field destructor. More...
 
void SIGNDOC_Field_assign (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const struct SIGNDOC_Field *aSource)
 SIGNDOC_Field assignment operator. More...
 
char * SIGNDOC_Field_getName (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding)
 Get the name of the field. More...
 
const char * SIGNDOC_Field_getNameUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the name of the field as UTF-8-encoded C string. More...
 
void SIGNDOC_Field_setName (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aName)
 Set the name of the field. More...
 
void SIGNDOC_Field_setNameW (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const wchar_t *aName)
 Set the name of the field. More...
 
char * SIGNDOC_Field_getAlternateName (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding)
 Get the alternate name of the field. More...
 
void SIGNDOC_Field_setAlternateName (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aName)
 Set the alternate name of the field. More...
 
char * SIGNDOC_Field_getMappingName (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding)
 Get the mapping name of the field. More...
 
void SIGNDOC_Field_setMappingName (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aName)
 Set the mapping name of the field. More...
 
int SIGNDOC_Field_getValueCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of values of the field. More...
 
char * SIGNDOC_Field_getValue (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, int aIndex)
 Get a value of the field. More...
 
const char * SIGNDOC_Field_getValueUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Get a value of the field. More...
 
void SIGNDOC_Field_clearValues (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Clear the values. More...
 
void SIGNDOC_Field_addValue (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aValue)
 Add a value to the field. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setValueByIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, int aEncoding, const char *aValue)
 Set a value of the field. More...
 
void SIGNDOC_Field_setValue (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aValue)
 Set the value of the field. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeValue (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove a value from the field. More...
 
int SIGNDOC_Field_getValueIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the current value index. More...
 
void SIGNDOC_Field_setValueIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Set the value index. More...
 
SIGNDOC_Boolean SIGNDOC_Field_clickButton (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Click a check box or a radio button. More...
 
int SIGNDOC_Field_getChoiceCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of available choices for a list box or combo box. More...
 
char * SIGNDOC_Field_getChoiceValue (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, int aIndex)
 Get an available choice of a list box or combo box. More...
 
const char * SIGNDOC_Field_getChoiceValueUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Get an available choice of a list box or combo box. More...
 
char * SIGNDOC_Field_getChoiceExport (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, int aIndex)
 Get the export value for an available choice of a list box or combo box. More...
 
const char * SIGNDOC_Field_getChoiceExportUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Get the export value for an available choice of a list box or combo box. More...
 
void SIGNDOC_Field_clearChoices (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Clear the choices of a list box or combo box. More...
 
void SIGNDOC_Field_addChoice (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aValue)
 Add a choice to a list box or combo box. More...
 
void SIGNDOC_Field_addChoiceWithExport (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aValue, const char *aExport)
 Add a choice to a list box or combo box. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setChoice (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, int aEncoding, const char *aValue)
 Set a choice value of a list box or combo box. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setChoiceWithExport (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, int aEncoding, const char *aValue, const char *aExport)
 Set a choice value of a list box or combo box. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeChoice (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove a choice from a list box or combo box. More...
 
int SIGNDOC_Field_getType (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the type of the field. More...
 
void SIGNDOC_Field_setType (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aType)
 Set the type of the field. More...
 
int SIGNDOC_Field_getFlags (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the flags of the field. More...
 
void SIGNDOC_Field_setFlags (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aFlags)
 Set the flags of the field. More...
 
int SIGNDOC_Field_getSignatureType (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Get the signature type of a signature field. More...
 
int SIGNDOC_Field_getDocMDP (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Get the DocMDP P value of a certification signature. More...
 
SIGNDOC_Boolean SIGNDOC_Field_isSigned (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Check if this field is a signed signature field. More...
 
SIGNDOC_Boolean SIGNDOC_Field_isCurrentlyClearable (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Check if this signature field is currently clearable. More...
 
int SIGNDOC_Field_getMaxLen (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get maximum length of text field. More...
 
void SIGNDOC_Field_setMaxLen (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aMaxLen)
 Set maximum length of text fields. More...
 
int SIGNDOC_Field_getTopIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the index of the choice to be displayed in the first line of a list box. More...
 
void SIGNDOC_Field_setTopIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aTopIndex)
 Set the index of the choice to be displayed in the first line of a list box. More...
 
int SIGNDOC_Field_getWidget (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the index of the currently selected widget. More...
 
int SIGNDOC_Field_getWidgetCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of widgets. More...
 
SIGNDOC_Boolean SIGNDOC_Field_selectWidget (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Select a widget. More...
 
SIGNDOC_Boolean SIGNDOC_Field_addWidget (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Add a widget to the field. More...
 
SIGNDOC_Boolean SIGNDOC_Field_insertWidget (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Add a widget to the field in front of another widget. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeWidget (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove a widget from the field. More...
 
int SIGNDOC_Field_getWidgetFlags (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the annotation flags of the widget. More...
 
void SIGNDOC_Field_setWidgetFlags (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aFlags)
 Set the annotation flags of the widget. More...
 
int SIGNDOC_Field_getPage (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the page number. More...
 
void SIGNDOC_Field_setPage (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aPage)
 Set the page number. More...
 
double SIGNDOC_Field_getLeft (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the left coordinate. More...
 
void SIGNDOC_Field_setLeft (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, double aLeft)
 Set the left coordinate. More...
 
double SIGNDOC_Field_getBottom (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the bottom coordinate. More...
 
void SIGNDOC_Field_setBottom (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, double aBottom)
 Set the bottom coordinate. More...
 
double SIGNDOC_Field_getRight (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the right coordinate. More...
 
void SIGNDOC_Field_setRight (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, double aRight)
 Set the right coordinate. More...
 
double SIGNDOC_Field_getTop (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the top coordinate. More...
 
void SIGNDOC_Field_setTop (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, double aTop)
 Set the top coordinate. More...
 
char * SIGNDOC_Field_getButtonValue (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding)
 Get the button value of a widget of a radio button group or check box. More...
 
const char * SIGNDOC_Field_getButtonValueUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the button value of a widget of a radio button group or check box. More...
 
void SIGNDOC_Field_setButtonValue (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aValue)
 
int SIGNDOC_Field_getJustification (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the justification of the widget. More...
 
void SIGNDOC_Field_setJustification (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aJustification)
 Set the justification of the widget. More...
 
int SIGNDOC_Field_getRotation (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the rotation of the widget contents. More...
 
void SIGNDOC_Field_setRotation (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aRotation)
 Set the rotation of the widget contents. More...
 
SIGNDOC_Boolean SIGNDOC_Field_getTextFieldAttributes (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, struct SIGNDOC_TextFieldAttributes *aOutput)
 Get the text field attributes of the widget. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setTextFieldAttributes (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const struct SIGNDOC_TextFieldAttributes *aInput)
 Set the text field attributes of the widget. More...
 
struct SIGNDOC_ColorSIGNDOC_Field_getBackgroundColor (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Get the background color of the widget. More...
 
void SIGNDOC_Field_setBackgroundColor (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const struct SIGNDOC_Color *aColor)
 Set the background color of the widget. More...
 
struct SIGNDOC_ColorSIGNDOC_Field_getBorderColor (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Get the border color of the widget. More...
 
void SIGNDOC_Field_setBorderColor (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const struct SIGNDOC_Color *aColor)
 Set the border color of the widget. More...
 
double SIGNDOC_Field_getBorderWidth (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Get the border width of the widget. More...
 
void SIGNDOC_Field_setBorderWidth (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, double aWidth)
 Set the border width of the widget. More...
 
int SIGNDOC_Field_getBorderStyle (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Get the border style. More...
 
void SIGNDOC_Field_setBorderStyle (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aStyle)
 Set the border style. More...
 
int SIGNDOC_Field_getButtonStyle (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Get the button style of a check box or radio button field. More...
 
void SIGNDOC_Field_setButtonStyle (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aStyle)
 Set the button style of a check box or radio button field. More...
 
int SIGNDOC_Field_getLockType (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the lock type. More...
 
void SIGNDOC_Field_setLockType (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aLockType)
 Set the lock type. More...
 
int SIGNDOC_Field_getLockFieldCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of field names for SIGNDOC_FIELD_LOCKTYPE_INCLUDE and SIGNDOC_FIELD_LOCKTYPE_EXCLUDE. More...
 
char * SIGNDOC_Field_getLockField (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, int aIndex)
 Get the name of a lock field. More...
 
const char * SIGNDOC_Field_getLockFieldUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Get the name of a lock field. More...
 
void SIGNDOC_Field_clearLockFields (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Clear the lock fields. More...
 
void SIGNDOC_Field_addLockField (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aName)
 Add a lock field to the field. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setLockFieldByIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, int aEncoding, const char *aName)
 Set a lock field. More...
 
void SIGNDOC_Field_setLockField (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aName)
 Set a lock field. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeLockField (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove a lock field. More...
 
int SIGNDOC_Field_getLockMDP (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the lock MDP value. More...
 
void SIGNDOC_Field_setLockMDP (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aMDP)
 Set the lock MDP value. More...
 
unsigned SIGNDOC_Field_getCertSeedValueFlags (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the certificate seed value dictionary flags (/SV/Cert/Ff) of a signature field. More...
 
void SIGNDOC_Field_setCertSeedValueFlags (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, unsigned aFlags)
 Set the certificate seed value dictionary flags (/SV/Cert/Ff) of a signature field. More...
 
int SIGNDOC_Field_getCertSeedValueSubjectDNCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of subject distinguished names in the certificate seed value dictionary. More...
 
char * SIGNDOC_Field_getCertSeedValueSubjectDN (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, int aIndex)
 Get a subject distinguished name from the certificate seed value dictionary. More...
 
const char * SIGNDOC_Field_getCertSeedValueSubjectDNUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Get a subject distinguished name from the certificate seed value dictionary. More...
 
void SIGNDOC_Field_clearCertSeedValueSubjectDNs (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Remove all subject distinguished names from the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_addCertSeedValueSubjectDN (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aName)
 Add a subject distinguished name to the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValueSubjectDNByIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, int aEncoding, const char *aName)
 Set a subject distinguished name in the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValueSubjectDN (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aName)
 Set a subject distinguished name in the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeCertSeedValueSubjectDN (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove a subject distinguished name from the certificate seed value dictionary. More...
 
int SIGNDOC_Field_getCertSeedValueSubjectCertificateCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of subject certificates in the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_getCertSeedValueSubjectCertificate (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, struct SIGNDOC_ByteArray *aOutput)
 Get a subject certificate of the certificate seed value dictionary. More...
 
void SIGNDOC_Field_clearCertSeedValueSubjectCertificates (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Remove all subject certificates from the certificate seed value dictionary. More...
 
void SIGNDOC_Field_addCertSeedValueSubjectCertificate (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const void *aPtr, size_t aSize)
 Add a subject certificate to the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValueSubjectCertificateByIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, const void *aPtr, size_t aSize)
 Set a subject certificate in the certificate seed value dictionary. More...
 
void SIGNDOC_Field_setCertSeedValueSubjectCertificate (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const void *aPtr, size_t aSize)
 Set a subject certificate in the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeCertSeedValueSubjectCertificate (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove a subject certificate from the certificate seed value dictionary. More...
 
int SIGNDOC_Field_getCertSeedValueIssuerCertificateCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of issuer certificates in the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_getCertSeedValueIssuerCertificate (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, struct SIGNDOC_ByteArray *aOutput)
 Get an issuer certificate of the certificate seed value dictionary. More...
 
void SIGNDOC_Field_clearCertSeedValueIssuerCertificates (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Remove all issuer certificates from the certificate seed value dictionary. More...
 
void SIGNDOC_Field_addCertSeedValueIssuerCertificate (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const void *aPtr, size_t aSize)
 Add an issuer certificate to the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValueIssuerCertificateByIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, const void *aPtr, size_t aSize)
 Set an issuer certificate in the certificate seed value dictionary. More...
 
void SIGNDOC_Field_setCertSeedValueIssuerCertificate (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const void *aPtr, size_t aSize)
 Set an issuer certificate in the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeCertSeedValueIssuerCertificate (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove an issuer certificate from the certificate seed value dictionary. More...
 
int SIGNDOC_Field_getCertSeedValuePolicyCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of policy OIDs in the certificate seed value dictionary. More...
 
char * SIGNDOC_Field_getCertSeedValuePolicy (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, int aIndex)
 Get a policy OID from the certificate seed value dictionary. More...
 
const char * SIGNDOC_Field_getCertSeedValuePolicyUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Get a policy OID from the certificate seed value dictionary. More...
 
void SIGNDOC_Field_clearCertSeedValuePolicies (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Remove all policy OIDs from the certificate seed value dictionary. More...
 
void SIGNDOC_Field_addCertSeedValuePolicy (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aOID)
 Add a policy OID to the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValuePolicyByIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, int aEncoding, const char *aOID)
 Set a policy OID in the certificate seed value dictionary. More...
 
void SIGNDOC_Field_setCertSeedValuePolicy (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aOID)
 Set a policy OID in the certificate seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeCertSeedValuePolicy (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove a policy OID from the certificate seed value dictionary. More...
 
char * SIGNDOC_Field_getSeedValueTimeStampServerURL (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding)
 Get the URL of the RFC 3161 time-stamp server from the signature field seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueTimeStampRequired (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 This function gets a flag from the signature field seed value dictionary that indicates whether a time stamp is required or not for the signature. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueTimeStamp (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aURL, SIGNDOC_Boolean aRequired)
 Set the URL of an RFC 3161 time-stamp server in the signature field seed value dictionary. More...
 
char * SIGNDOC_Field_getSeedValueFilter (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding)
 Get Filter entry (signature handler) from the signature field seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueFilterRequired (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 This function gets a flag from the signature field seed value dictionary that indicates whether the Filter entry (signature handler) is a required constraint or not. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueFilter (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aFilter, SIGNDOC_Boolean aRequired)
 Set the Filter entry (signature handler) in the signature field seed value dictionary. More...
 
int SIGNDOC_Field_getSeedValueSubFilterCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of SubFilter values in the seed value dictionary. More...
 
char * SIGNDOC_Field_getSeedValueSubFilter (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, int aIndex)
 Get a SubFilter value from the seed value dictionary. More...
 
const char * SIGNDOC_Field_getSeedValueSubFilterUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Get a SubFilter value from the seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueSubFilterRequired (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 This function gets a flag from the signature field seed value dictionary that indicates whether the SubFilter values are a required constraint or not. More...
 
void SIGNDOC_Field_setSeedValueSubFilterRequired (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, SIGNDOC_Boolean aRequired)
 Set a flag from the signature field seed value dictionary that indicates whether the SubFilter values are a required constraint or not. More...
 
void SIGNDOC_Field_clearSeedValueSubFilters (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Remove all SubFilter values from the seed value dictionary. More...
 
void SIGNDOC_Field_addSeedValueSubFilter (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aSubFilter)
 Add a SubFilter value to the seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueSubFilterByIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, int aEncoding, const char *aSubFilter)
 Set a SubFilter value in the seed value dictionary. More...
 
void SIGNDOC_Field_setSeedValueSubFilter (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aSubFilter)
 Set a SubFilter value in the seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeSeedValueSubFilter (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove a SubFilter value from the seed value dictionary. More...
 
int SIGNDOC_Field_getSeedValueDigestMethodCount (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the number of DigestMethod values in the seed value dictionary. More...
 
char * SIGNDOC_Field_getSeedValueDigestMethod (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, int aIndex)
 Get a DigestMethod value from the seed value dictionary. More...
 
const char * SIGNDOC_Field_getSeedValueDigestMethodUTF8 (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Get a DigestMethod value from the seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueDigestMethodRequired (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 This function gets a flag from the signature field seed value dictionary that indicates whether the DigestMethod values are a required constraint or not. More...
 
void SIGNDOC_Field_setSeedValueDigestMethodRequired (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, SIGNDOC_Boolean aRequired)
 Set a flag from the signature field seed value dictionary that indicates whether the DigestMethod values are a required constraint or not. More...
 
void SIGNDOC_Field_clearSeedValueDigestMethods (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Remove all DigestMethod values from the seed value dictionary. More...
 
void SIGNDOC_Field_addSeedValueDigestMethod (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aDigestMethod)
 Add a DigestMethod value to the seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueDigestMethodByIndex (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex, int aEncoding, const char *aDigestMethod)
 Set a DigestMethod value in the seed value dictionary. More...
 
void SIGNDOC_Field_setSeedValueDigestMethod (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aEncoding, const char *aDigestMethod)
 Set a DigestMethod value in the seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_removeSeedValueDigestMethod (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aIndex)
 Remove a DigestMethod value from the seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueAddRevInfo (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Get the AddRevInfo flag from the signature field seed value dictionary. More...
 
void SIGNDOC_Field_setSeedValueAddRevInfo (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, SIGNDOC_Boolean aAddRevInfo)
 Set the AddRevInfo flag in the certificate seed value dictionary. More...
 
int SIGNDOC_Field_getSeedValueMDP (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Field *aObj)
 Get the MDP value from the signature field seed value dictionary. More...
 
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueMDP (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, int aMDP)
 Set the MDP value in the certificate seed value dictionary. More...
 
struct SIGNDOC_ColorSIGNDOC_Field_getEmptyFieldColor (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj)
 Get the color used for empty signature field in TIFF document. More...
 
void SIGNDOC_Field_setEmptyFieldColor (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Field *aObj, const struct SIGNDOC_Color *aColor)
 Set color used for empty signature field in TIFF document. More...
 

Detailed Description

One field of a document.

Calling member function of this class does not modify the document, use SIGNDOC_Document_setField() to apply your changes to the document or SIGNDOC_Document_addField() to add the field to the document.

In PDF documents, a field may have multiple visible "widgets". For instance, a radio button group (radio button field) usually has multiple visible buttons, ie, widgets.

A SIGNDOC_Field object represents the logical field (containing the type, name, value, etc) as well as all its widgets. Each widget has a page number, a coordinate rectangle, and, for some field types, text field attributes.

Only one widget of the field is accessible at a time in a SIGNDOC_Field object; use SIGNDOC_Field_selectWidget() to select the widget to be operated on.

For radio button fields and check box fields, each widget also has a "button value". The button value should remain constant after the document has been created (but it can be changed if needed). The field proper has a value which is either "Off" or one of the button values of its widgets.

Each widget of a radio button field or a check box field is either off or on. If all widgets of a radio button field or a check box are off, the field's value is "Off". If at least one widget is on, the field's value is that widget's "button value". As the value of a field must be different for the on and off states of the field, the button values must not be "Off".

Check box fields usually have exactly one widget. If that widget's button value is, say, "On", the field's value is either "Off" (for the off state) or "On" (for the on state).

Check box fields can have multiple widgets. If all widgets have the same button value, say, "yes", the field's value is either "Off" (for the off state) or "yes" (for the on state). Clicking one widget of the check box field will toggle all widgets of that check box field.

Check box fields can have multiple widgets having different button values. If a check box field has two widgets with button values, say, "1" and "2", the field's value is either "Off" (for the off state), "1" (if the first widget is on) or "2" (if the second widget is on). The two widgets cannot be on at the same time.

If a check box field has three widgets with button values, say, "one, "two", and "two", respectively, the field's value is either "Off" (for the off state), "one" (if the first widget is on) or "two" (if the second and third widgets are on). The second and third widgets will always have the same state and that state will never be the same as the state of the first widget.

A radio button field usually has at least two widgets, having different button values. If a radio button field has two widgets with button values, say, "a" and "b", the field's value is either "Off" (for the off state), "a" (if the first widget is on), or "b" (if the second widget is on). Clicking the first widget puts the first widget into the on state and the second one into the off state (and vice versa).

Different widgets of a radio button field can have the same button value. The behavior for clicking a widget with non-unique button value depends on the SIGNDOC_FIELD_FLAGS_RADIOSINUNISON field flag. If that flag is set (it usually is), widgets having the same button value always have the same on/off state. Clicking one of them will turn all of them on. If the SIGNDOC_FIELD_FLAGS_RADIOSINUNISON is not set, clicking one widget will put all others (of the same radio button field) into the off state. See SIGNDOC_Field_getValueIndex() for details.

Signature fields have exactly one widget. Fields of other types must have at least one widget.

Other fields such as text fields (except for signature fields) also can have multiple widgets, but all of them display the same value.

Signature fields in PDF documents are invisible if their width is zero or if their height is zero, that is, if the coordinates set by SIGNDOC_Field_setLeft() and SIGNDOC_Field_setRight() are equal or if the coordinates set by SIGNDOC_Field_setBottom() and SIGNDOC_Field_setTop()) are equal.

Constructors, destructors, and assignment:

All fields have a type, a name, and flags:

Fields in PDF documents can have an alternate name which is used for displaying the field name in a user interface:

Moreover, fields in PDF documents can have a mapping name which is used for exporting field data:

Most fields in PDF documents can have one or more value:

List boxes and combo boxes can have multiple possible choices:

Fields have one or more widget annotation:

Each widget annotation has a couple of flags:

Each widget annotation has a position on a page:

Radio button widgets and check box widgets have a button value (see above):

Text in a widget is controlled by these functions:

The background color of a widget can be set:

The border of a widget is controlled by these functions:

Radio button widgets and Check box widgets can display various symbols:

The following functions can be used for signature fields only:

Signing signature fields in a PDF document can automatically lock other fields:

Signature fields in a PDF document can have a signature field seed value dictionary controlling various aspects of signing. It can restrict the certificates that can be used for signing:

The certificate can be restricted by subject distinguished name:

The certificate can be restricted by specifying acceptable signing certificates:

The certificate can be restricted by specifying acceptable issuer certificates:

And the certificate can be restricted by policy:

The signature field seed value dictionary can specify an RFC 3161 time-stamp server:

The signature field seed value dictionary can specify a signature handler (Filter):

The signature field seed value dictionary can specify signing methods (SubFilter):

The signature field seed value dictionary can specify a hash algorithms (DigestMethod):

The signature field seed value dictionary can specify whether adding revocation to the signature is mandatory:

The signature field seed value dictionary can specify what changes shall be allowed after signing the signature field:

The color of an empty signature field in a TIFF document can be specified:

Member Function Documentation

void SIGNDOC_Field_addCertSeedValueIssuerCertificate ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const void *  aPtr,
size_t  aSize 
)

Add an issuer certificate to the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aPtrPointer to the first octet of the DER-encoded certificate.
[in]aSizeSize in octets of the DER-encoded certificate.
See also
SIGNDOC_Field_clearCertSeedValueIssuerCertificates(), SIGNDOC_Field_getCertSeedValueIssuerCertificate(), SIGNDOC_Field_getCertSeedValueIssuerCertificateUTF8(), SIGNDOC_Field_setCertSeedValueIssuerCertificate()
void SIGNDOC_Field_addCertSeedValuePolicy ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aOID 
)

Add a policy OID to the certificate seed value dictionary.

See the PDF Reference for details.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Note
OIDs should be ASCII strings.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aOID (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aOIDThe policy OID.
See also
SIGNDOC_Field_clearCertSeedValuePolicies(), SIGNDOC_Field_getCertSeedValuePolicy(), SIGNDOC_Field_getCertSeedValuePolicyUTF8(), SIGNDOC_Field_setCertSeedValuePolicy()
void SIGNDOC_Field_addCertSeedValueSubjectCertificate ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const void *  aPtr,
size_t  aSize 
)

Add a subject certificate to the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aPtrPointer to the first octet of the DER-encoded certificate.
[in]aSizeSize in octets of the DER-encoded certificate.
See also
SIGNDOC_Field_clearCertSeedValueSubjectCertificates(), SIGNDOC_Field_getCertSeedValueSubjectCertificate(), SIGNDOC_Field_getCertSeedValueSubjectCertificateUTF8(), SIGNDOC_Field_setCertSeedValueSubjectCertificate()
SIGNDOC_Boolean SIGNDOC_Field_addCertSeedValueSubjectDN ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aName 
)

Add a subject distinguished name to the certificate seed value dictionary.

See the PDF Reference for details.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name is not correctly encoded according to the specified encoding.

Note
RFC 4514 requires UTF-8 encoding.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aName (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aNameThe subject distinguished name formatted according to RFC 4514.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aName cannot be parsed.
See also
SIGNDOC_Field_clearCertSeedValueSubjectDNs(), SIGNDOC_Field_getCertSeedValueSubjectDN(), SIGNDOC_Field_getCertSeedValueSubjectDNUTF8(), SIGNDOC_Field_setCertSeedValueSubjectDN()
void SIGNDOC_Field_addChoice ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aValue 
)

Add a choice to a list box or combo box.

This function uses the choice value as export value.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Note
SIGNDOC_Field_getValue() and SIGNDOC_Field_setValue() use the export value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aValue (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aValueThe choice value and export value to be added. Complex scripts are supported, see Complex Scripts.
See also
SIGNDOC_Field_clearChoices(), SIGNDOC_Field_getChoiceExport(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_setChoice(), SIGNDOC_Field_setButtonValue()
void SIGNDOC_Field_addChoiceWithExport ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aValue,
const char *  aExport 
)

Add a choice to a list box or combo box.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Note
SIGNDOC_Field_getValue() and SIGNDOC_Field_setValue() use the export value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aValue and aExport (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aValueThe choice value to be added. Complex scripts are supported, see Complex Scripts.
[in]aExportThe export value to be added.
See also
SIGNDOC_Field_clearChoices(), SIGNDOC_Field_getChoiceExport(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_setChoice(), SIGNDOC_Field_setButtonValue()
void SIGNDOC_Field_addLockField ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aName 
)

Add a lock field to the field.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aName (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aNameThe name of the lock field to be added.
See also
SIGNDOC_Field_clearLockFields(), SIGNDOC_Field_getLockField(), SIGNDOC_Field_getLockFieldUTF8(), SIGNDOC_Field_setLockField()
void SIGNDOC_Field_addSeedValueDigestMethod ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aDigestMethod 
)

Add a DigestMethod value to the seed value dictionary.

See SIGNDOC_Field_getSeedValueDigestMethod() for details.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aDigestMethod (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aDigestMethodThe DigestMethod value.
See also
SIGNDOC_Field_clearSeedValueDigestMethods(), SIGNDOC_Field_getSeedValueDigestMethod(), SIGNDOC_Field_getSeedValueDigestMethodUTF8(), SIGNDOC_Field_setSeedValueDigestMethod()
void SIGNDOC_Field_addSeedValueSubFilter ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aSubFilter 
)

Add a SubFilter value to the seed value dictionary.

See SIGNDOC_Field_getSeedValueSubFilter() for details.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aSubFilter (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aSubFilterThe SubFilter value.
See also
SIGNDOC_Field_clearSeedValueSubFilters(), SIGNDOC_Field_getSeedValueSubFilter(), SIGNDOC_Field_getSeedValueSubFilterUTF8(), SIGNDOC_Field_setSeedValueSubFilter()
void SIGNDOC_Field_addValue ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aValue 
)

Add a value to the field.

Pushbutton fields and signature fields don't have a value, list boxes can have multiple values selected if SIGNDOC_FIELD_FLAGS_MULTISELECT is set.

Hard line breaks for multiline text fields (ie, text fields with flag SIGNDOC_FIELD_FLAGS_MULTILINE set) are encoded as "\r", "\n", or "\r\n". The behavior for values containing line breaks is undefined if the SIGNDOC_FIELD_FLAGS_MULTILINE flag is not set.

After calling this function, SIGNDOC_Field_getValueIndex() will return -1.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aValue (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aValueThe value to be added. Complex scripts are supported, see Complex Scripts.
See also
SIGNDOC_Field_clearValues(), SIGNDOC_Field_getValue(), SIGNDOC_Field_getValueIndex(), SIGNDOC_Field_getValueUTF8(), SIGNDOC_Field_setValue()
SIGNDOC_Boolean SIGNDOC_Field_addWidget ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Add a widget to the field.

The new widget will be added at the end, ie, calling SIGNDOC_Field_getWidgetCount() before calling SIGNDOC_Field_addWidget() yields the index of the widget that will be added.

After adding a widget, the new widget will be selected. You must set the page number and the coordinates in the new widget before calling SIGNDOC_Document_addField() or SIGNDOC_Document_setField().

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE on error.
See also
SIGNDOC_Field_addChoice(), SIGNDOC_Field_getWidget(), SIGNDOC_Field_getWidgetCount(), SIGNDOC_Field_insertWidget(), SIGNDOC_Field_removeWidget(), SIGNDOC_Field_selectWidget()
void SIGNDOC_Field_assign ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const struct SIGNDOC_Field aSource 
)

SIGNDOC_Field assignment operator.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aSourceThe source object.
void SIGNDOC_Field_clearCertSeedValueIssuerCertificates ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Remove all issuer certificates from the certificate seed value dictionary.

See the PDF Reference for details.

After calling this function, SIGNDOC_Field_getCertSeedValueIssuerCertificateCount() will return 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
See also
SIGNDOC_Field_addCertSeedValueIssuerCertificate(), SIGNDOC_Field_getCertSeedValueIssuerCertificateCount(), SIGNDOC_Field_removeCertSeedValueIssuerCertificate()
void SIGNDOC_Field_clearCertSeedValuePolicies ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Remove all policy OIDs from the certificate seed value dictionary.

See the PDF Reference for details.

After calling this function, SIGNDOC_Field_getCertSeedValuePolicyCount() will return 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
See also
SIGNDOC_Field_addCertSeedValuePolicy(), SIGNDOC_Field_getCertSeedValuePolicyCount(), SIGNDOC_Field_removeCertSeedValuePolicy()
void SIGNDOC_Field_clearCertSeedValueSubjectCertificates ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Remove all subject certificates from the certificate seed value dictionary.

See the PDF Reference for details.

After calling this function, SIGNDOC_Field_getCertSeedValueSubjectCertificateCount() will return 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
See also
SIGNDOC_Field_addCertSeedValueSubjectCertificate(), SIGNDOC_Field_getCertSeedValueSubjectCertificateCount(), SIGNDOC_Field_removeCertSeedValueSubjectCertificate()
void SIGNDOC_Field_clearCertSeedValueSubjectDNs ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Remove all subject distinguished names from the certificate seed value dictionary.

See the PDF Reference for details.

After calling this function, SIGNDOC_Field_getCertSeedValueSubjectDNCount() will return 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
See also
SIGNDOC_Field_addCertSeedValueSubjectDN(), SIGNDOC_Field_getCertSeedValueSubjectDNCount(), SIGNDOC_Field_removeCertSeedValueSubjectDN()
void SIGNDOC_Field_clearChoices ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Clear the choices of a list box or combo box.

After calling this function, SIGNDOC_Field_getChoiceCount() will return 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
See also
SIGNDOC_Field_addChoice(), SIGNDOC_Field_getChoiceCount(), SIGNDOC_Field_removeChoice(), SIGNDOC_Field_setButtonValue()
void SIGNDOC_Field_clearLockFields ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Clear the lock fields.

After calling this function, SIGNDOC_Field_getLockFieldCount() will return 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
See also
SIGNDOC_Field_addLockField(), SIGNDOC_Field_getLockFieldCount(), SIGNDOC_Field_removeLockField()
void SIGNDOC_Field_clearSeedValueDigestMethods ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Remove all DigestMethod values from the seed value dictionary.

See SIGNDOC_Field_getSeedValueDigestMethod() for details.

After calling this function, SIGNDOC_Field_getSeedValueDigestMethodCount() will return 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
See also
SIGNDOC_Field_addSeedValueDigestMethod(), SIGNDOC_Field_getSeedValueDigestMethodCount(), SIGNDOC_Field_removeSeedValueDigestMethod()
void SIGNDOC_Field_clearSeedValueSubFilters ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Remove all SubFilter values from the seed value dictionary.

See SIGNDOC_Field_getSeedValueSubFilter() for details.

After calling this function, SIGNDOC_Field_getSeedValueSubFilterCount() will return 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
See also
SIGNDOC_Field_addSeedValueSubFilter(), SIGNDOC_Field_getSeedValueSubFilterCount(), SIGNDOC_Field_removeSeedValueSubFilter()
void SIGNDOC_Field_clearValues ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Clear the values.

After calling this function, SIGNDOC_Field_getValueCount() will return 0 and SIGNDOC_Field_getValueIndex() will return -1.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
See also
SIGNDOC_Field_addValue(), SIGNDOC_Field_getValueCount(), SIGNDOC_Field_getValueIndex(), SIGNDOC_Field_removeValue()
SIGNDOC_Boolean SIGNDOC_Field_clickButton ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Click a check box or a radio button.

This function updates both the value (see SIGNDOC_Field_setValue()) and the value index (see SIGNDOC_Field_setValueIndex()) based on the current (non-committed) state of the SIGNDOC_Field object (not looking at the state of the field in the document). It does nothing for other field types.

Adobe products seem to ignore SIGNDOC_FIELD_FLAGS_NOTOGGLETOOFF flag being not set, this function behaves the same way (ie, as if SIGNDOC_FIELD_FLAGS_NOTOGGLETOOFF was set).

Note
A return value of SIGNDOC_FALSE does not indicate an error!
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the widget being clicked.
Returns
SIGNDOC_TRUE if anything has been changed, SIGNDOC_FALSE if nothing has been changed (wrong field type, aIndex out of range, radio button already active).
struct SIGNDOC_Field * SIGNDOC_Field_clone ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aSource 
)

Clone a SIGNDOC_Field object.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aSourceThe object to be copied.
void SIGNDOC_Field_delete ( struct SIGNDOC_Field aObj)

SIGNDOC_Field destructor.

Parameters
[in]aObjA pointer to the SIGNDOC_Field object, must not be a pointer returned by SIGNDOC_FieldArray_at().
char * SIGNDOC_Field_getAlternateName ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding 
)

Get the alternate name of the field.

The alternate name (if present) should be used for displaying the field name in a user interface. Currently, only PDF documents support alternate field names.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name cannot be represented using the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
Returns
The alternate name of the field, empty if the field does not have an alternate name. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_getMappingName(), SIGNDOC_Field_getName(), SIGNDOC_Field_setAlternateName()
struct SIGNDOC_Color * SIGNDOC_Field_getBackgroundColor ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Get the background color of the widget.

This function is available for fields of PDF documents only.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_TextFieldAttributes object.
Returns
A pointer to an object describing the background color or NULL if the widget does not have a background color (transparent background). The caller is responsible for destroying the object with SIGNDOC_Color_delete().
See also
SIGNDOC_Field_getEmptyFieldColor(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBackgroundColor(), SIGNDOC_Color_delete()
struct SIGNDOC_Color * SIGNDOC_Field_getBorderColor ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Get the border color of the widget.

This function is available for fields of PDF documents only.

The border color is used only if the border width is positive.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_TextFieldAttributes object.
Returns
A pointer to an object describing the border color or NULL if the widget does not have a border color. The caller is responsible for destroying the object with SIGNDOC_Color_delete().
See also
SIGNDOC_Field_getBorderWidth(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBorderColor(), SIGNDOC_Color_delete()
int SIGNDOC_Field_getBorderStyle ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Get the border style.

This function is available for fields of PDF documents only.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_TextFieldAttributes object.
Returns
The border style: SIGNDOC_FIELD_BORDERSTYLE_OTHER, SIGNDOC_FIELD_BORDERSTYLE_SOLID, SIGNDOC_FIELD_BORDERSTYLE_DASHED, SIGNDOC_FIELD_BORDERSTYLE_BEVELED, SIGNDOC_FIELD_BORDERSTYLE_INSET, or SIGNDOC_FIELD_BORDERSTYLE_UNDERLINE.
See also
SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBorderStyle()
double SIGNDOC_Field_getBorderWidth ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Get the border width of the widget.

This function is available for fields of PDF documents only.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_TextFieldAttributes object.
Returns
The border width.
See also
SIGNDOC_Field_getBorderColor(), SIGNDOC_Field_getBorderStyle(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBorderWidth()
double SIGNDOC_Field_getBottom ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the bottom coordinate.

The origin is in the bottom left corner of the page, see Coordinate Systems.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The bottom coordinate.
See also
SIGNDOC_Field_getLeft(), SIGNDOC_Field_getRight(), SIGNDOC_Field_getTop(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBottom()
int SIGNDOC_Field_getButtonStyle ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Get the button style of a check box or radio button field.

This function is available for fields of PDF documents only.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_TextFieldAttributes object.
Returns
The button style: SIGNDOC_FIELD_BUTTONSTYLE_OTHER, SIGNDOC_FIELD_BUTTONSTYLE_CHECK_MARK, SIGNDOC_FIELD_BUTTONSTYLE_CROSS, SIGNDOC_FIELD_BUTTONSTYLE_STAR, SIGNDOC_FIELD_BUTTONSTYLE_CIRCLE, SIGNDOC_FIELD_BUTTONSTYLE_SQUARE, or SIGNDOC_FIELD_BUTTONSTYLE_DIAMOND.
See also
SIGNDOC_Field_selectWidget()
char * SIGNDOC_Field_getButtonValue ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding 
)

Get the button value of a widget of a radio button group or check box.

Usually, different radio buttons (widgets) of a radio button group (field) have different values. The radio button group has a value (returned by SIGNDOC_Field_getValue()) which is either "Off" or one of those values. The individual buttons (widgets) of a check box field can also have different export values.

Different radio buttons (widgets) of a radio button group (field) can have the same value; in that case, the radio buttons are linked. The individual buttons of a check box field also can have the same value.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
Returns
The button value an empty string (for field types that don't use button values). If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_getValue(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setButtonValue()
const char * SIGNDOC_Field_getButtonValueUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the button value of a widget of a radio button group or check box.

See SIGNDOC_Field_getButtonValue() for details.

Note
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The button value an empty string (for field types that don't use button values). This pointer will become invalid when SIGNDOC_Field_addWidget(), SIGNDOC_Field_insertWidget(), SIGNDOC_Field_removeWidget(), or SIGNDOC_Field_setButtonValue() is called or aObj is destroyed.
See also
SIGNDOC_Field_getButtonValue(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_getValue(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setButtonValue()
unsigned SIGNDOC_Field_getCertSeedValueFlags ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the certificate seed value dictionary flags (/SV/Cert/Ff) of a signature field.

The default value is 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The certificate seed value dictionary flags of the field: SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_SUBJECTCERT, SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_ISSUERCERT, SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_POLICY, SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_SUBJECTDN, SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_KEYUSAGE, and SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_URL.
See also
SIGNDOC_Field_setCertSeedValueFlags()
SIGNDOC_Boolean SIGNDOC_Field_getCertSeedValueIssuerCertificate ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
struct SIGNDOC_ByteArray aOutput 
)

Get an issuer certificate of the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the issuer certificate.
[in,out]aOutputThe DER-encoded certificate will be stored here.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_addCertSeedValueIssuerCertificate(), SIGNDOC_Field_clearCertSeedValueIssuerCertificates(), SIGNDOC_Field_getCertSeedValueIssuerCertificateCount(), SIGNDOC_Field_getCertSeedValueIssuerCertificateUTF8(), SIGNDOC_Field_removeCertSeedValueIssuerCertificate(), SIGNDOC_Field_setCertSeedValueIssuerCertificate()
int SIGNDOC_Field_getCertSeedValueIssuerCertificateCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the number of issuer certificates in the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The number of issuer certificates.
See also
SIGNDOC_Field_addCertSeedValueIssuerCertificate(), SIGNDOC_Field_clearCertSeedValueIssuerCertificates(), SIGNDOC_Field_getCertSeedValueIssuerCertificate(), SIGNDOC_Field_getCertSeedValueIssuerCertificateUTF8(), SIGNDOC_Field_removeCertSeedValueIssuerCertificate()
char * SIGNDOC_Field_getCertSeedValuePolicy ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
int  aIndex 
)

Get a policy OID from the certificate seed value dictionary.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value cannot be represented using the specified encoding.

See the PDF Reference for details.

Note
OIDs should be ASCII strings.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aIndex0-based index of the policy OID.
Returns
The selected policy OID or an empty string if the index is out of range. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_addCertSeedValuePolicy(), SIGNDOC_Field_clearCertSeedValuePolicies(), SIGNDOC_Field_getCertSeedValuePolicyCount(), SIGNDOC_Field_getCertSeedValuePolicyUTF8(), SIGNDOC_Field_removeCertSeedValuePolicy(), SIGNDOC_Field_setCertSeedValuePolicy()
int SIGNDOC_Field_getCertSeedValuePolicyCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the number of policy OIDs in the certificate seed value dictionary.

See the PDF Reference for details.

Returns
The number of policy OIDs.
See also
SIGNDOC_Field_addCertSeedValuePolicy(), SIGNDOC_Field_clearCertSeedValuePolicies(), SIGNDOC_Field_getCertSeedValuePolicy(), SIGNDOC_Field_getCertSeedValuePolicyUTF8(), SIGNDOC_Field_removeCertSeedValuePolicy()
const char * SIGNDOC_Field_getCertSeedValuePolicyUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Get a policy OID from the certificate seed value dictionary.

See the PDF Reference for details.

Note
OIDs should be ASCII strings.
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the policy OID.
Returns
The selected policy OID or an empty string if the index is out of range. This pointer will become invalid when SIGNDOC_Field_addCertSeedValuePolicy(), SIGNDOC_Field_clearCertSeedValuePolicies(), SIGNDOC_Field_removeCertSeedValuePolicy(), or SIGNDOC_Field_setCertSeedValuePolicy() is called or aObj is destroyed.
See also
SIGNDOC_Field_addCertSeedValuePolicy(), SIGNDOC_Field_clearCertSeedValuePolicies(), SIGNDOC_Field_getCertSeedValuePolicyCount(), SIGNDOC_Field_getCertSeedValuePolicyUTF8(), SIGNDOC_Field_setCertSeedValuePolicy()
SIGNDOC_Boolean SIGNDOC_Field_getCertSeedValueSubjectCertificate ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
struct SIGNDOC_ByteArray aOutput 
)

Get a subject certificate of the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the subject certificate.
[in,out]aOutputThe DER-encoded certificate will be stored here.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_addCertSeedValueSubjectCertificate(), SIGNDOC_Field_clearCertSeedValueSubjectCertificates(), SIGNDOC_Field_getCertSeedValueSubjectCertificateCount(), SIGNDOC_Field_getCertSeedValueSubjectCertificateUTF8(), SIGNDOC_Field_removeCertSeedValueSubjectCertificate(), SIGNDOC_Field_setCertSeedValueSubjectCertificate()
int SIGNDOC_Field_getCertSeedValueSubjectCertificateCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the number of subject certificates in the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The number of subject certificates.
See also
SIGNDOC_Field_addCertSeedValueSubjectCertificate(), SIGNDOC_Field_clearCertSeedValueSubjectCertificates(), SIGNDOC_Field_getCertSeedValueSubjectCertificate(), SIGNDOC_Field_getCertSeedValueSubjectCertificateUTF8(), SIGNDOC_Field_removeCertSeedValueSubjectCertificate()
char * SIGNDOC_Field_getCertSeedValueSubjectDN ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
int  aIndex 
)

Get a subject distinguished name from the certificate seed value dictionary.

See the PDF Reference for details.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name cannot be represented using the specified encoding.

Note
RFC 4514 requires UTF-8 encoding.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aIndex0-based index of the subject distinguished name.
Returns
The selected subject distinguished name (formatted according to RFC 4514) or an empty string if the index is out of range. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_addCertSeedValueSubjectDN(), SIGNDOC_Field_clearCertSeedValueSubjectDNs(), SIGNDOC_Field_getCertSeedValueSubjectDNCount(), SIGNDOC_Field_getCertSeedValueSubjectDNUTF8(), SIGNDOC_Field_removeCertSeedValueSubjectDN(), SIGNDOC_Field_setCertSeedValueSubjectDN()
int SIGNDOC_Field_getCertSeedValueSubjectDNCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the number of subject distinguished names in the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The number of subject distinguished names in the certificate seed value dictionary.
See also
SIGNDOC_Field_addCertSeedValueSubjectDN(), SIGNDOC_Field_clearCertSeedValueSubjectDNs(), SIGNDOC_Field_getCertSeedValueSubjectDN(), SIGNDOC_Field_getCertSeedValueSubjectDNUTF8(), SIGNDOC_Field_removeCertSeedValueSubjectDN()
const char * SIGNDOC_Field_getCertSeedValueSubjectDNUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Get a subject distinguished name from the certificate seed value dictionary.

See the PDF Reference for details.

Note
RFC 4514 requires UTF-8 encoding.
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the subject distinguished name.
Returns
The selected subject distinguished name (formatted according to RFC 4514) or an empty string if the index is out of range. This pointer will become invalid when SIGNDOC_Field_addCertSeedValueSubjectDN(), SIGNDOC_Field_clearCertSeedValueSubjectDNs(), SIGNDOC_Field_removeCertSeedValueSubjectDN(), or SIGNDOC_Field_setCertSeedValueSubjectDN() is called or aObj is destroyed.
See also
SIGNDOC_Field_addCertSeedValueSubjectDN(), SIGNDOC_Field_clearCertSeedValueSubjectDNs(), SIGNDOC_Field_getCertSeedValueSubjectDNCount(), SIGNDOC_Field_getCertSeedValueSubjectDNUTF8(), SIGNDOC_Field_setCertSeedValueSubjectDN()
int SIGNDOC_Field_getChoiceCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the number of available choices for a list box or combo box.

List boxes and combo boxes can have multiple possible choices. For other field types, this function returns 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The number of available choices or 0 if not supported for the type of this field.
See also
SIGNDOC_Field_getButtonValue(), SIGNDOC_Field_getChoiceExport(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_getValueCount()
char * SIGNDOC_Field_getChoiceExport ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
int  aIndex 
)

Get the export value for an available choice of a list box or combo box.

List boxes and combo boxes can have multiple possible choices. Each choice has a value (which will be displayed) and an export value (which is used for exporting the value of the field). Usually, both values are identical. This function returns one export value, use SIGNDOC_Field_getChoiceValue() to get the associated choice value.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value cannot be represented using the specified encoding.

Note
SIGNDOC_Field_getValue() and SIGNDOC_Field_setValue() use the export value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aIndex0-based index of the export value.
Returns
The selected export value of the field or an empty string if the index is out of range. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_addChoice(), SIGNDOC_Field_clearChoices(), SIGNDOC_Field_getChoiceCount(), SIGNDOC_Field_getChoiceExportUTF8(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_getButtonValue(), SIGNDOC_Field_removeChoice(), SIGNDOC_Field_setChoice()
const char * SIGNDOC_Field_getChoiceExportUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Get the export value for an available choice of a list box or combo box.

List boxes and combo boxes can have multiple possible choices. Each choice has a value (which will be displayed) and an export value (which is used for exporting the value of the field). Usually, both values are identical. This function returns one export value, use SIGNDOC_Field_getChoiceValue() to get the associated choice value.

Note
SIGNDOC_Field_getValue() and SIGNDOC_Field_setValue() use the export value.
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the choice value.
Returns
The selected export value of the field or an empty string if the index is out of range. This pointer will become invalid when SIGNDOC_Field_addChoice(), SIGNDOC_Field_clearChoices(), SIGNDOC_Field_removeChoice(), or SIGNDOC_Field_setChoice() is called or aObj is destroyed. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages.
See also
SIGNDOC_Field_addChoice(), SIGNDOC_Field_clearChoices(), SIGNDOC_Field_getChoiceCount(), SIGNDOC_Field_getChoiceExport(), SIGNDOC_Field_getChoiceValueUTF8(), SIGNDOC_Field_getButtonValueUTF8(), SIGNDOC_Field_setChoice()
char * SIGNDOC_Field_getChoiceValue ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
int  aIndex 
)

Get an available choice of a list box or combo box.

List boxes and combo boxes can have multiple possible choices. Each choice has a value (which will be displayed) and an export value (which is used for exporting the value of the field). Usually, both values are identical. This function returns one choice value, use SIGNDOC_Field_getChoiceExport() to get the associated export value.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value cannot be represented using the specified encoding.

Note
SIGNDOC_Field_getValue() and SIGNDOC_Field_setValue() use the export value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aIndex0-based index of the choice value.
Returns
The selected choice value of the field or an empty string if the index is out of range. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_addChoice(), SIGNDOC_Field_clearChoices(), SIGNDOC_Field_getChoiceExport(), SIGNDOC_Field_getChoiceValueUTF8(), SIGNDOC_Field_getChoiceCount(), SIGNDOC_Field_getButtonValue(), SIGNDOC_Field_removeChoice(), SIGNDOC_Field_setChoice()
const char * SIGNDOC_Field_getChoiceValueUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Get an available choice of a list box or combo box.

List boxes and combo boxes can have multiple possible choices. Each choice has a value (which will be displayed) and an export value (which is used for exporting the value of the field). Usually, both values are identical. This function returns one choice value, use SIGNDOC_Field_getChoiceExportUTF8() to get the associated export value.

Note
SIGNDOC_Field_getValue() and SIGNDOC_Field_setValue() use the export value.
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the choice value.
Returns
The selected choice value of the field or an empty string if the index is out of range. This pointer will become invalid when SIGNDOC_Field_addChoice(), SIGNDOC_Field_clearChoices(), SIGNDOC_Field_removeChoice(), or SIGNDOC_Field_setChoice() is called or aObj is destroyed. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages.
See also
SIGNDOC_Field_addChoice(), SIGNDOC_Field_clearChoices(), SIGNDOC_Field_getChoiceCount(), SIGNDOC_Field_getChoiceExportUTF8(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_getButtonValueUTF8(), SIGNDOC_Field_setChoice()
int SIGNDOC_Field_getDocMDP ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Get the DocMDP P value of a certification signature.

The DocMDP P value specifies what modifications to the document are allowed by the certification signature.

This function does not verify the certification signature.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
-1 if this field is not a certification signature, 1 if no modifications are allowed, 2 if only filling in forms, instantiating page templates, and signing are permitted, 3 if only filling in forms, instantiating page templates, signing, creating annotations, deleting annotations, and modifying annotations are permitted. For TIFF documents, this function always returns -1.
See also
SIGNDOC_Field_getLockMDP(), SIGNDOC_Field_getSignatureType(), SIGNDOC_Document_setShootInFoot(), SIGNDOC_VerificationResult_getDocMDP()
struct SIGNDOC_Color * SIGNDOC_Field_getEmptyFieldColor ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the color used for empty signature field in TIFF document.

The default value is white.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
A pointer to a new SIGNDOC_Color object describing the color used for empty signature fields in a TIFF document. The caller is responsible for destroying the object with SIGNDOC_Color_delete(). The return value is NULL for other types of documents.
See also
SIGNDOC_Field_getBackgroundColor(), SIGNDOC_Field_setEmptyFieldColor(), SIGNDOC_Color_delete()
int SIGNDOC_Field_getJustification ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the justification of the widget.

The default value is SIGNDOC_FIELD_JUSTIFICATION_NONE.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The justification of the widget: SIGNDOC_FIELD_JUSTIFICATION_LEFT, SIGNDOC_FIELD_JUSTIFICATION_CENTER, or SIGNDOC_FIELD_JUSTIFICATION_RIGHT for text fields and list boxes, SIGNDOC_FIELD_JUSTIFICATION_NONE for other fields.
See also
SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setJustification()
double SIGNDOC_Field_getLeft ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the left coordinate.

The origin is in the bottom left corner of the page, see Coordinate Systems.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The left coordinate.
See also
SIGNDOC_Field_getBottom(), SIGNDOC_Field_getRight(), SIGNDOC_Field_getTop(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setLeft()
char * SIGNDOC_Field_getLockField ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
int  aIndex 
)

Get the name of a lock field.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name cannot be represented using the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aIndex0-based index of the lock field.
Returns
The name of the selected lock field or an empty string if the index is out of range. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_addLockField(), SIGNDOC_Field_clearLockFields(), SIGNDOC_Field_getLockFieldCount(), SIGNDOC_Field_getLockFieldUTF8(), SIGNDOC_Field_removeLockField(), SIGNDOC_Field_setLockField()
int SIGNDOC_Field_getLockFieldCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the number of field names for SIGNDOC_FIELD_LOCKTYPE_INCLUDE and SIGNDOC_FIELD_LOCKTYPE_EXCLUDE.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The number of field names.
See also
SIGNDOC_Field_addLockField(), SIGNDOC_Field_clearLockFields(), SIGNDOC_Field_getLockField(), SIGNDOC_Field_getLockFieldUTF8(), SIGNDOC_Field_removeLockField()
const char * SIGNDOC_Field_getLockFieldUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Get the name of a lock field.

Note
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the lock field.
Returns
The name of the selected lock field or an empty string if the index is out of range. This pointer will become invalid when SIGNDOC_Field_addLockField(), SIGNDOC_Field_clearLockFields(), SIGNDOC_Field_removeLockField(), or SIGNDOC_Field_setLockField() is called or aObj is destroyed. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages.
See also
SIGNDOC_Field_addLockField(), SIGNDOC_Field_clearLockFields(), SIGNDOC_Field_getLockFieldCount(), SIGNDOC_Field_getLockFieldUTF8(), SIGNDOC_Field_setLockField()
int SIGNDOC_Field_getLockMDP ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the lock MDP value.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The lock MDP value: -1 if there is no lock MDP value, 1 if no modifications are allowed, 2 if only filling in forms, instantiating page templates, and signing are permitted, 3 if only filling in forms, instantiating page templates, signing, creating annotations, deleting annotations, and modifying annotations are permitted.
See also
SIGNDOC_Field_getDocMDP(), SIGNDOC_Field_setLockMDP()
int SIGNDOC_Field_getLockType ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the lock type.

The lock type defines the fields to be locked when signing this signature field.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The lock type: SIGNDOC_FIELD_LOCKTYPE_NA, SIGNDOC_FIELD_LOCKTYPE_NONE, SIGNDOC_FIELD_LOCKTYPE_ALL, SIGNDOC_FIELD_LOCKTYPE_INCLUDE, or SIGNDOC_FIELD_LOCKTYPE_EXCLUDE.
See also
SIGNDOC_Field_getLockField(), SIGNDOC_Field_setLockType()
char * SIGNDOC_Field_getMappingName ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding 
)

Get the mapping name of the field.

The mapping name (if present) should be used for exporting field data. Currently, only PDF documents support mapping field names.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name cannot be represented using the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
Returns
The mapping name of the field, empty if the field does not have an mapping name. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_getAlternateName(), SIGNDOC_Field_getName(), SIGNDOC_Field_setMappingName()
int SIGNDOC_Field_getMaxLen ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get maximum length of text field.

The default value is -1.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The maximum length of text fields or -1 if the field is not a text field or if the text field does not have a maximum length.
See also
SIGNDOC_Field_setMaxLen()
char * SIGNDOC_Field_getName ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding 
)

Get the name of the field.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name cannot be represented using the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
Returns
The name of the field. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_getAlternateName(), SIGNDOC_Field_getMappingName(), SIGNDOC_Field_getNameUTF8(), SIGNDOC_Field_setName(), SIGNDOC_Field_setNameW()
const char * SIGNDOC_Field_getNameUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the name of the field as UTF-8-encoded C string.

Note
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The name of the field. This pointer will become invalid when SIGNDOC_Field_setName() or SIGNDOC_Field_setNameW() is called or aObj is destroyed. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages.
int SIGNDOC_Field_getPage ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the page number.

This function returns the index of the page on which this field occurs (1 for the first page), or 0 if the page number is unknown.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The 1-based page number or 0 if the page number is unknown.
See also
SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setPage()
double SIGNDOC_Field_getRight ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the right coordinate.

The origin is in the bottom left corner of the page, see Coordinate Systems. If coordinates are given in pixels (this is true for TIFF documents), this coordinate is exclusive.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The right coordinate.
See also
SIGNDOC_Field_getBottom(), SIGNDOC_Field_getLeft(), SIGNDOC_Field_getTop(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setRight()
int SIGNDOC_Field_getRotation ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the rotation of the widget contents.

The rotation is specified in degrees (counter-clockwise). The default value is 0.

For instance, if the rotation is 270, left-to right text will display top down.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The rotation of the widget: 0, 90, 180, or 270.
See also
SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setJustification()
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueAddRevInfo ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Get the AddRevInfo flag from the signature field seed value dictionary.

If the AddRevInfo flag is set, revocation must be checked at signing time and revocation data must be included in the signature.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
SIGNDOC_TRUE if the AddRevInfo flag is set and the Ff entry specifies that AddRevInfo is a mandatory constraint. SIGNDOC_FALSE otherwise.
See also
SIGNDOC_Field_setSeedValueAddRevInfo()
char * SIGNDOC_Field_getSeedValueDigestMethod ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
int  aIndex 
)

Get a DigestMethod value from the seed value dictionary.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value cannot be represented using the specified encoding.

DigestMethod values in the seed value dictionary restrict the hash algorithms available for signing with RSA.

Note that the Digest values are different from the message digest algorithms returned by SIGNDOC_VerificationResult_getDigestAlgorithm():

DigestMethodSIGNDOC_
VerificationResult_
getDigestAlgorithm()
DetachedHashAlgorithm
n/a "MD5" n/a
"RIPEMD160" "RIPEMD-160" "RIPEMD-160"
"SHA1" "SHA-1" "SHA-1"
- "SHA-224" "SHA-224"
"SHA256" "SHA-256" "SHA-256"
"SHA384" "SHA-384" "SHA-384"
"SHA512" "SHA-512" "SHA-512"
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aIndex0-based index of the DigestMethod value.
Returns
The selected DigestMethod value or an empty string if the index is out of range. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_addSeedValueDigestMethod(), SIGNDOC_Field_clearSeedValueDigestMethods(), SIGNDOC_Field_getSeedValueDigestMethodCount(), SIGNDOC_Field_getSeedValueDigestMethodRequired(), SIGNDOC_Field_getSeedValueDigestMethodUTF8(), SIGNDOC_Field_removeSeedValueDigestMethod(), SIGNDOC_Field_setSeedValueDigestMethod()
int SIGNDOC_Field_getSeedValueDigestMethodCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueDigestMethodRequired ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

This function gets a flag from the signature field seed value dictionary that indicates whether the DigestMethod values are a required constraint or not.

If this function returns SIGNDOC_TRUE, a signing method corresponding to one of the DigestMethod values returned by SIGNDOC_Field_getSeedValueDigestMethodUTF8() must be used for signing.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
SIGNDOC_TRUE iff one of the DigestMethod values returned by SIGNDOC_Field_getSeedValueDigestMethod() must be used.
See also
SIGNDOC_Field_getSeedValueDigestMethod(), SIGNDOC_Field_setSeedValueDigestMethodRequired()
const char * SIGNDOC_Field_getSeedValueDigestMethodUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Get a DigestMethod value from the seed value dictionary.

See SIGNDOC_Field_getSeedValueDigestMethod() for details.

Note
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the DigestMethod value.
Returns
The selected DigestMethod value or an empty string if the index is out of range. This pointer will become invalid when SIGNDOC_Field_addSeedValueDigestMethod(), SIGNDOC_Field_clearSeedValueDigestMethods(), SIGNDOC_Field_removeSeedValueDigestMethod(), or SIGNDOC_Field_setSeedValueDigestMethod() is called or aObj is destroyed.
See also
SIGNDOC_Field_addSeedValueDigestMethod(), SIGNDOC_Field_clearSeedValueDigestMethods(), SIGNDOC_Field_getSeedValueDigestMethodCount(), SIGNDOC_Field_getSeedValueDigestMethodUTF8(), SIGNDOC_Field_setSeedValueDigestMethod()
char * SIGNDOC_Field_getSeedValueFilter ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding 
)

Get Filter entry (signature handler) from the signature field seed value dictionary.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value cannot be represented using the specified encoding.

Note
The Filter entry should be an ASCII string.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
Returns
The Filter entry (signature handler) or an empty string if the signature field seed value dictionary does not have a Filter entry. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_getSeedValueFilterRequired(), SIGNDOC_Field_setSeedValueFilter()
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueFilterRequired ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

This function gets a flag from the signature field seed value dictionary that indicates whether the Filter entry (signature handler) is a required constraint or not.

If this function returns SIGNDOC_TRUE, the signature handler returned by SIGNDOC_Field_getSeedValueFilter() must be used for signing.

Note
Adobe Reader seems to ignore this flag.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
SIGNDOC_TRUE iff the signature handler returned by SIGNEDOC_Field_getSeedValueFilter() must be used.
See also
SIGNDOC_Field_getSeedValueFilter()
int SIGNDOC_Field_getSeedValueMDP ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Get the MDP value from the signature field seed value dictionary.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
-1 if the MDP value is not set, 0 for an author signature, 1 through 3 for a certification signature:
  • 1 no changes to the document shall be permitted
  • 2 only filling in forms, instantiating page templates, and signing shall be permitted
  • 3 only filling in forms, instantiating page templates, signing, creating annotations, deleting annotations, and modifying annotations shall be permitted.
See also
SIGNDOC_Field_setSeedValueMDP()
char * SIGNDOC_Field_getSeedValueSubFilter ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
int  aIndex 
)

Get a SubFilter value from the seed value dictionary.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value cannot be represented using the specified encoding.

SubFilter values in the seed value dictionary restrict the signing methods available for signing. These values are currently defined:

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aIndex0-based index of the SubFilter value.
Returns
The selected SubFilter value or an empty string if the index is out of range. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_addSeedValueSubFilter(), SIGNDOC_Field_clearSeedValueSubFilters(), SIGNDOC_Field_getSeedValueSubFilterCount(), SIGNDOC_Field_getSeedValueSubFilterRequired(), SIGNDOC_Field_getSeedValueSubFilterUTF8(), SIGNDOC_Field_removeSeedValueSubFilter(), SIGNDOC_Field_setSeedValueSubFilter()
int SIGNDOC_Field_getSeedValueSubFilterCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueSubFilterRequired ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

This function gets a flag from the signature field seed value dictionary that indicates whether the SubFilter values are a required constraint or not.

If this function returns SIGNDOC_TRUE, a signing method corresponding to one of the SubFilter values returned by SIGNDOC_Field_getSeedValueSubFilter() must be used for signing.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
SIGNDOC_TRUE iff one of the SubFilter values returned by SIGNDOC_Field_getSeedValueSubFilter() must be used.
See also
SIGNDOC_Field_getSeedValueSubFilter(), SIGNDOC_Field_setSeedValueSubFilterRequired()
const char * SIGNDOC_Field_getSeedValueSubFilterUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Get a SubFilter value from the seed value dictionary.

See SIGNDOC_Field_getSeedValueSubFilter() for details.

Note
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the SubFilter value.
Returns
The selected SubFilter value or an empty string if the index is out of range. This pointer will become invalid when SIGNDOC_Field_addSeedValueSubFilter(), SIGNDOC_Field_clearSeedValueSubFilters(), SIGNDOC_Field_removeSeedValueSubFilter(), or SIGNDOC_Field_setSeedValueSubFilter() is called or aObj is destroyed.
See also
SIGNDOC_Field_addSeedValueSubFilter(), SIGNDOC_Field_clearSeedValueSubFilters(), SIGNDOC_Field_getSeedValueSubFilterCount(), SIGNDOC_Field_getSeedValueSubFilterUTF8(), SIGNDOC_Field_setSeedValueSubFilter()
SIGNDOC_Boolean SIGNDOC_Field_getSeedValueTimeStampRequired ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

This function gets a flag from the signature field seed value dictionary that indicates whether a time stamp is required or not for the signature.

If this function returns SIGNDOC_TRUE, the URL returned by SIGNDOC_Field_getSeedValueTimeStampServerURL() will be used to add a time stamp to the signature when signing.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
SIGNDOC_FALSE if a time stamp is not required, SIGNDOC_TRUE if a time stamp is required.
See also
SIGNDOC_Field_getSeedValueTimeStampServerURL()
char * SIGNDOC_Field_getSeedValueTimeStampServerURL ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding 
)

Get the URL of the RFC 3161 time-stamp server from the signature field seed value dictionary.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value cannot be represented using the specified encoding.

Note
The URL should be an ASCII string.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
Returns
The URL of the time-stamp server or an empty string if no time-stamp server is defined. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_getSeedValueTimeStampRequired(), SIGNDOC_Field_setSeedValueTimeStamp()
int SIGNDOC_Field_getSignatureType ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Get the signature type of a signature field.

For TIFF documents, only approval signatures are available.

For SIGNDOC_FIELD_SIGNATURETYPE_CERTIFICATION, you should display "certified by ..." rather than "signed by ...".

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The signature type: SIGNDOC_FIELD_SIGNATURETYPE_NOT_A_SIGNATURE_FIELD, SIGNDOC_FIELD_SIGNATURETYPE_NOT_SIGNED, SIGNDOC_FIELD_SIGNATURETYPE_APPROVAL, SIGNDOC_FIELD_SIGNATURETYPE_CERTIFICATION, or SIGNDOC_FIELD_SIGNATURETYPE_DOCUMENT_TIME_STAMP.
See also
SIGNDOC_Document_verifySignature(), SIGNDOC_Field_isSigned()
SIGNDOC_Boolean SIGNDOC_Field_getTextFieldAttributes ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
struct SIGNDOC_TextFieldAttributes aOutput 
)

Get the text field attributes of the widget.

This function returns SIGNDOC_FALSE if the field uses the document's default font name for fields.

Text fields, signature fields, list boxes, and combo boxes can have text field attributes.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in,out]aOutputThis object will be updated.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE on error.
See also
SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setTextFieldAttributes(), SIGNDOC_Document_getTextFieldAttributes()
double SIGNDOC_Field_getTop ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the top coordinate.

The origin is in the bottom left corner of the page, see Coordinate Systems. If coordinates are given in pixels (this is true for TIFF documents), this coordinate is exclusive.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The top coordinate.
See also
SIGNDOC_Field_getBottom(), SIGNDOC_Field_getLeft(), SIGNDOC_Field_getRight(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setTop()
int SIGNDOC_Field_getTopIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the index of the choice to be displayed in the first line of a list box.

The default value is 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The index of the choice to be displayed in the first line of a list box or 0 for other field types.
See also
SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_setTopIndex()
int SIGNDOC_Field_getType ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the type of the field.

The default value is SIGNDOC_FIELD_TYPE_UNKNOWN.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The type of the field: SIGNDOC_FIELD_TYPE_UNKNOWN, SIGNDOC_FIELD_TYPE_PUSHBUTTON, SIGNDOC_FIELD_TYPE_CHECK_BOX, SIGNDOC_FIELD_TYPE_RADIO_BUTTON, SIGNDOC_FIELD_TYPE_TEXT, SIGNDOC_FIELD_TYPE_LIST_BOX, SIGNDOC_FIELD_TYPE_SIGNATURE_DIGSIG, SIGNDOC_FIELD_TYPE_SIGNATURE_SIGNDOC, or SIGNDOC_FIELD_TYPE_COMBO_BOX.
See also
SIGNDOC_Field_setType()
char * SIGNDOC_Field_getValue ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
int  aIndex 
)

Get a value of the field.

Pushbutton fields and signature fields don't have a value, list boxes can have multiple values selected if SIGNDOC_FIELD_FLAGS_MULTISELECT is set.

Hard line breaks for multiline text fields (ie, text fields with flag SIGNDOC_FIELD_FLAGS_MULTILINE set) are encoded as "\r", "\n", or "\r\n".

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value cannot be represented using the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aIndex0-based index of the value.
Returns
The selected value of the field or an empty string if the index is out of range. If flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set, the string may contain escape sequences for selecting natural languages. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Field_addValue(), SIGNDOC_Field_clearValues(), SIGNDOC_Field_getChoiceExport(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_getValueCount(), SIGNDOC_Field_getValueIndex(), SIGNDOC_Field_getValueUTF8(), SIGNDOC_Field_removeValue(), SIGNDOC_Field_setValue()
int SIGNDOC_Field_getValueCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the number of values of the field.

Pushbutton fields and signature fields don't have a value, list boxes can have multiple values selected if SIGNDOC_FIELD_FLAGS_MULTISELECT is set.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The number of values.
See also
SIGNDOC_Field_getChoiceCount(), SIGNDOC_Field_getValue()
int SIGNDOC_Field_getValueIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the current value index.

Radio button groups and check box fields can have multiple widgets having the same button value. For check box fields and radio buttons without SIGNDOC_FIELD_FLAGS_RADIOSINUNISON set, specifying the selected button by value string is not possible in that case. A 0-based value index can be used to find out which button is selected or to select a button.

Radio button groups and check box fields need not use a value index; in fact, they usually don't.

SIGNDOC_Document_addField() and SIGNDOC_Document_setField() update the value index if the value of a radio button group or check box field is selected by string (ie, SIGNDOC_Document_setValue()) and the field has ambiguous button names.

The "Off" value never has a value index.

Note
SIGNDOC_Document_addValue(), SIGNDOC_Document_clearValues(), and SIGNDOC_Document_setValue() make the value index unset (ie, SIGNDOC_Document_getValueIndex() will return -1).
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
the 0-based value index or -1 if the value index is not set.
See also
SIGNDOC_Field_clickButton(), SIGNDOC_Field_getValue(), SIGNDOC_Field_setValueIndex()
const char * SIGNDOC_Field_getValueUTF8 ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Get a value of the field.

Pushbutton fields and signature fields don't have a value, list boxes can have multiple values selected if SIGNDOC_FIELD_FLAGS_MULTISELECT is set.

Hard line breaks for multiline text fields (ie, text fields with flag SIGNDOC_FIELD_FLAGS_MULTILINE set) are encoded as "\r", "\n", or "\r\n".

Note
Do not call SIGNDOC_free() on the return value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the value.
Returns
The selected value of the field or an empty string if the index is out of range. This pointer will become invalid when SIGNDOC_Field_addValue(), SIGNDOC_Field_clearValues(), SIGNDOC_Field_removeValue(), or SIGNDOC_Field_setValue() is called or aObj is destroyed.
See also
SIGNDOC_Field_addValue(), SIGNDOC_Field_clearValues(), SIGNDOC_Field_getValue(), SIGNDOC_Field_getValueCount(), SIGNDOC_Field_getValueIndex(), SIGNDOC_Field_setValue()
int SIGNDOC_Field_getWidget ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the index of the currently selected widget.

Initially, the first widget is selected (ie, this function returns 0). However, there is an exception to this rule: SIGNDOC_Field objects created by SIGNDOC_Document_getFieldsOfPage() can have a different widget selected initially for PDF documents.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The 0-based index of the currently selected widget.
See also
SIGNDOC_Field_selectWidget()
int SIGNDOC_Field_getWidgetCount ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the number of widgets.

Signature fields always have exactly one widget. Radio button fields (radio button groups) usually have one widget per button (but can have more widgets than buttons by having multiple widgets for some or all buttons).

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The number of widgets for this field.
int SIGNDOC_Field_getWidgetFlags ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj 
)

Get the annotation flags of the widget.

The default value is SIGNDOC_FIELD_WIDGETFLAGS_PRINT. The annotation flags are used for PDF documents only. Currently, the semantics of the annotation flags are ignored by this software (ie, the flags are stored in the document, but they don't have any meaning to this software).

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
The annotation flags of the widget: SIGNDOC_FIELD_WIDGETFLAGS_INVISIBLE, SIGNDOC_FIELD_WIDGETFLAGS_HIDDEN, SIGNDOC_FIELD_WIDGETFLAGS_PRINT, SIGNDOC_FIELD_WIDGETFLAGS_NOZOOM, SIGNDOC_FIELD_WIDGETFLAGS_NOROTATE, SIGNDOC_FIELD_WIDGETFLAGS_NOVIEW, SIGNDOC_FIELD_WIDGETFLAGS_READONLY, SIGNDOC_FIELD_WIDGETFLAGS_LOCKED, SIGNDOC_FIELD_WIDGETFLAGS_TOGGLENOVIEW, and SIGNDOC_FIELD_WIDGETFLAGS_LOCKEDCONTENTS.
See also
SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setWidgetFlags()
SIGNDOC_Boolean SIGNDOC_Field_insertWidget ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Add a widget to the field in front of another widget.

The new widget will be inserted at the specified index, ie, the index of the new widget will be aIndex.

After adding a widget, the new widget will be selected. You must set the page number and the coordinates in the new widget before calling SIGNDOC_Document_addField() or SIGNDOC_Document_setField().

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the widget in front of which the new widget shall be inserted. You can pass the current number of widgets as returned by SIGNDOC_Field_getWidgetCount() to add the new widget to the end as SIGNDOC_Field_addWidget() does.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE on error.
See also
SIGNDOC_Field_addWidget(), SIGNDOC_Field_getWidget(), SIGNDOC_Field_getWidgetCount(), SIGNDOC_Field_removeWidget(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setValueIndex()
SIGNDOC_Boolean SIGNDOC_Field_isCurrentlyClearable ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Check if this signature field is currently clearable.

For some document formats (TIFF), signatures may only be cleared in the reverse order of signing (LIFO). Use this function to find out whether the signature field is currently clearable (as determined by SIGNDOC_Document_getField() or SIGNDOC_Document_getFields(),

Note
The value returned by this function does not change over the lifetime of aObj and therefore may not reflect the current state if signature fields have been signed or cleared since aObj was created.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
SIGNDOC_TRUE if this is a signature field that can be cleared now, SIGNDOC_FALSE otherwise.
See also
SIGNDOC_Document_getField(), SIGNDOC_Document_getFields()
SIGNDOC_Boolean SIGNDOC_Field_isSigned ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Field aObj 
)

Check if this field is a signed signature field.

This function is much more efficient than SIGNDOC_Document_verifySignature() and SIGNDOC_Document_verifySignature2().

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
Returns
SIGNDOC_TRUE if this field is a signed signature field, SIGNDOC_FALSE if this field is not a signature field or if this field is a signature field that is not signed.
See also
SIGNDOC_Document_verifySignature(), SIGNDOC_Field_getSignatureType()
struct SIGNDOC_Field * SIGNDOC_Field_new ( struct SIGNDOC_Exception **  aEx)

SIGNDOC_Field constructor.

The new SIGNDOC_Field object will have one widget.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
SIGNDOC_Boolean SIGNDOC_Field_removeCertSeedValueIssuerCertificate ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove an issuer certificate from the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the issuer certificate to be removed.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearCertSeedValueIssuerCertificates(), SIGNDOC_Field_getCertSeedValueIssuerCertificate(), SIGNDOC_Field_getCertSeedValueIssuerCertificateUTF8()
SIGNDOC_Boolean SIGNDOC_Field_removeCertSeedValuePolicy ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove a policy OID from the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the policy OID to be removed.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearCertSeedValuePolicies(), SIGNDOC_Field_getCertSeedValuePolicy(), SIGNDOC_Field_getCertSeedValuePolicyUTF8()
SIGNDOC_Boolean SIGNDOC_Field_removeCertSeedValueSubjectCertificate ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove a subject certificate from the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the subject certificate to be removed.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearCertSeedValueSubjectCertificates(), SIGNDOC_Field_getCertSeedValueSubjectCertificate(), SIGNDOC_Field_getCertSeedValueSubjectCertificateUTF8()
SIGNDOC_Boolean SIGNDOC_Field_removeCertSeedValueSubjectDN ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove a subject distinguished name from the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the subject distinguished name to be removed.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearCertSeedValueSubjectDNs(), SIGNDOC_Field_getCertSeedValueSubjectDN(), SIGNDOC_Field_getCertSeedValueSubjectDNUTF8()
SIGNDOC_Boolean SIGNDOC_Field_removeChoice ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove a choice from a list box or combo box.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the choice to be removed.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_addChoice(), SIGNDOC_Field_clearChoices()
SIGNDOC_Boolean SIGNDOC_Field_removeLockField ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove a lock field.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the lock field to be removed.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearLockFields(), SIGNDOC_Field_getLockField(), SIGNDOC_Field_getLockFieldUTF8()
SIGNDOC_Boolean SIGNDOC_Field_removeSeedValueDigestMethod ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove a DigestMethod value from the seed value dictionary.

See SIGNDOC_Field_getSeedValueDigestMethod() for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the DigestMethod value to be removed.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearSeedValueDigestMethods(), SIGNDOC_Field_getSeedValueDigestMethod(), SIGNDOC_Field_getSeedValueDigestMethodUTF8()
SIGNDOC_Boolean SIGNDOC_Field_removeSeedValueSubFilter ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove a SubFilter value from the seed value dictionary.

See SIGNDOC_Field_getSeedValueSubFilter() for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the SubFilter value to be removed.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearSeedValueSubFilters(), SIGNDOC_Field_getSeedValueSubFilter(), SIGNDOC_Field_getSeedValueSubFilterUTF8()
SIGNDOC_Boolean SIGNDOC_Field_removeValue ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove a value from the field.

After calling this function, SIGNDOC_Field_getValueIndex() will return -1.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the value to be removed.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearValues(), SIGNDOC_Field_getValue(), SIGNDOC_Field_getValueIndex(), SIGNDOC_Field_getValueUTF8()
SIGNDOC_Boolean SIGNDOC_Field_removeWidget ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Remove a widget from the field.

This function fails when there is only one widget. That is, a field always has at least one widget.

If the currently selected widget is removed, the following rules apply:

  • When removing the last widget (the one with index SIGNDOC_Field_getWidgetCount()-1), the predecessor of the removed widget will be selected.
  • Otherwise, the index of the selected widget won't change, ie, the successor of the removed widget will be selected.

If the widget to be removed is not selected, the currently selected widget will remain selected.

All widgets having an index greater than aIndex will have their index decremented by one.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the widget to remove.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE on error.
See also
SIGNDOC_Field_addWidget(), SIGNDOC_Field_getWidget(), SIGNDOC_Field_getWidgetCount(), SIGNDOC_Field_insertWidget(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setValueIndex()
void SIGNDOC_Field_setAlternateName ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aName 
)

Set the alternate name of the field.

The alternate name (if present) should be used for displaying the field name in a user interface. Currently, only PDF documents support alternate field names.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aName (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aNameThe alternate name of the field, empty to remove any alternate field name. Use SIGNDOC_Document_withEscapeSequence() to add a language code. See SIGNDOC_DOCUMENT_FLAGS_REQUIRE_ALTERNATE_FIELD_NAME for details.
See also
SIGNDOC_Field_getAlternateName(), SIGNDOC_Field_getName(), SIGNDOC_Field_setMappingName(), SIGNDOC_Field_setName(), SIGNDOC_Field_setNameW(), SIGNDOC_Document_withEscapeSequence(), SIGNDOC_DOCUMENT_FLAGS_REQUIRE_ALTERNATE_FIELD_NAME
void SIGNDOC_Field_setBackgroundColor ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const struct SIGNDOC_Color aColor 
)

Set the background color of the widget.

This function is available for fields of PDF documents only.

The initial value is NULL (transparent).

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aColorNULL for transparent or a pointer to a SIGNDOC_Color object representing the new background color.
See also
SIGNDOC_Field_getBackgroundColor(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setEmptyFieldColor()
void SIGNDOC_Field_setBorderColor ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const struct SIGNDOC_Color aColor 
)

Set the border color of the widget.

This function is available for fields of PDF documents only.

The border color is used only if the border width is positive.

For combo boxes, check boxes, and radio buttons, the initial value is black, for other field types, the initial value is transparent. After creation of a SIGNDOC_Field object, calling SIGNDOC_Field_setType() will set the border color accordingly. Once SIGNDOC_Field_setBorderColor() has been called, SIGNDOC_Field_setType() will no longer affect the border color.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aColorNULL for transparent or a pointer to a SIGNDOC_Color object representing the new border color.
See also
SIGNDOC_Field_getBorderColor(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBorderWidth(), SIGNDOC_Field_setType()
void SIGNDOC_Field_setBorderStyle ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aStyle 
)

Set the border style.

This function is available for fields of PDF documents only.

If aStyle is SIGNDOC_FIELD_BORDERSTYLE_OTHER, SIGNDOC_Document_setField() will keep the current border style and SIGNDOC_Document_addField() will fail.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_TextFieldAttributes object.
[in]aStyleThe new border style: SIGNDOC_FIELD_BORDERSTYLE_OTHER, SIGNDOC_FIELD_BORDERSTYLE_SOLID, SIGNDOC_FIELD_BORDERSTYLE_DASHED, SIGNDOC_FIELD_BORDERSTYLE_BEVELED, SIGNDOC_FIELD_BORDERSTYLE_INSET, or SIGNDOC_FIELD_BORDERSTYLE_UNDERLINE.
See also
SIGNDOC_Field_getBorderStyle(), SIGNDOC_Field_selectWidget()
void SIGNDOC_Field_setBorderWidth ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
double  aWidth 
)

Set the border width of the widget.

This function is available for fields of PDF documents only.

The initial value is 1.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_TextFieldAttributes object.
[in]aWidthThe new border width.
See also
SIGNDOC_Field_getBorderWidth(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBorderColor(), SIGNDOC_Field_setBorderStyle()
void SIGNDOC_Field_setBottom ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
double  aBottom 
)

Set the bottom coordinate.

The origin is in the bottom left corner of the page, see Coordinate Systems.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aBottomThe bottom coordinate.
See also
SIGNDOC_Field_getBottom(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setLeft(), SIGNDOC_Field_setRight(), SIGNDOC_Field_setTop(), SIGNDOC_DOCUMENT_SETFIELDFLAGS_MOVE
void SIGNDOC_Field_setButtonStyle ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aStyle 
)

Set the button style of a check box or radio button field.

This function is available for fields of PDF documents only.

If aStyle is SIGNDOC_FIELD_BUTTONSTYLE_OTHER, SIGNDOC_Document_setField() will keep the current border style and SIGNDOC_Document_addField() will fail.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_TextFieldAttributes object.
[in]aStyleThe new button style: SIGNDOC_FIELD_BUTTONSTYLE_DEFAULT, SIGNDOC_FIELD_BUTTONSTYLE_OTHER, SIGNDOC_FIELD_BUTTONSTYLE_CHECK_MARK, SIGNDOC_FIELD_BUTTONSTYLE_CROSS, SIGNDOC_FIELD_BUTTONSTYLE_STAR, SIGNDOC_FIELD_BUTTONSTYLE_CIRCLE, SIGNDOC_FIELD_BUTTONSTYLE_SQUARE, or SIGNDOC_FIELD_BUTTONSTYLE_DIAMOND.
See also
SIGNDOC_Field_getButtonStyle(), SIGNDOC_Field_selectWidget()
void SIGNDOC_Field_setButtonValue ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aValue 
)

Set the button value of a widget of a radio button group or a check box.

Usually, different radio buttons (widgets) of a radio button group (field) have different values. The radio button group has a value (returned by SIGNDOC_Field_getValue()) which is either "Off" or one of those values. The individual buttons (widgets) of a check box field can also have different export values.

Different radio buttons (widgets) of a radio button group (field) can have the same value; in that case, the radio buttons are linked. The individual buttons of a check box field also can have the same value.

SIGNDOC_Document_addField() and SIGNDOC_Document_setField() ignore the value set by this function if the field is neither a radio button group nor a check box field.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aValue (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aValueThe value to be set. Must not be empty, must not be "Off".
See also
SIGNDOC_Field_getButtonValue(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_getValue(), SIGNDOC_Field_selectWidget()
void SIGNDOC_Field_setCertSeedValueFlags ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
unsigned  aFlags 
)

Set the certificate seed value dictionary flags (/SV/Cert/Ff) of a signature field.

The default value is 0.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aFlagsThe certificate seed value dicitionary flags of the field: SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_SUBJECTCERT, SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_ISSUERCERT, SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_POLICY, SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_SUBJECTDN, SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_KEYUSAGE, and SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_URL.
See also
SIGNDOC_Field_getCertSeedValueFlags()
void SIGNDOC_Field_setCertSeedValueIssuerCertificate ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const void *  aPtr,
size_t  aSize 
)

Set an issuer certificate in the certificate seed value dictionary.

See the PDF Reference for details.

Calling this function is equivalent to calling clearCertSeedValueIssuerCertificates() and addCertSeedValueIssuerCertificate().

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aPtrPointer to the first octet of the DER-encoded certificate.
[in]aSizeSize in octets of the DER-encoded certificate.
See also
SIGNDOC_Field_clearCertSeedValueIssuerCertificates(), SIGNDOC_Field_getCertSeedValueIssuerCertificate(), SIGNDOC_Field_getCertSeedValueIssuerCertificateUTF8()
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValueIssuerCertificateByIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
const void *  aPtr,
size_t  aSize 
)

Set an issuer certificate in the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the issuer certificate to be set. If aIndex equals the current number of values, the certificate will be added.
[in]aPtrPointer to the first octet of the DER-encoded certificate.
[in]aSizeSize in octets of the DER-encoded certificate.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearCertSeedValueIssuerCertificates(), SIGNDOC_Field_getCertSeedValueIssuerCertificate(), SIGNDOC_Field_getCertSeedValueIssuerCertificateUTF8()
void SIGNDOC_Field_setCertSeedValuePolicy ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aOID 
)

Set a policy OID in the certificate seed value dictionary.

See the PDF Reference for details.

Calling this function is equivalent to calling SIGNDOC_Field_clearCertSeedValuePolicies() and SIGNDOC_Field_addCertSeedValuePolicy(), but the encoding of aOID is checked before modifying aObj.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Note
OIDs should be ASCII strings.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aOID (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aOIDThe policy OID.
See also
SIGNDOC_Field_clearCertSeedValuePolicies(), SIGNDOC_Field_getCertSeedValuePolicy(), SIGNDOC_Field_getCertSeedValuePolicyUTF8()
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValuePolicyByIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
int  aEncoding,
const char *  aOID 
)

Set a policy OID in the certificate seed value dictionary.

See the PDF Reference for details.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Note
OIDs should be ASCII strings.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the value to be set. If aIndex equals the current number of values, the value will be added.
[in]aEncodingThe encoding of aOID (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aOIDThe policy OID.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearCertSeedValuePolicies(), SIGNDOC_Field_getCertSeedValuePolicy(), SIGNDOC_Field_getCertSeedValuePolicyUTF8()
void SIGNDOC_Field_setCertSeedValueSubjectCertificate ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const void *  aPtr,
size_t  aSize 
)

Set a subject certificate in the certificate seed value dictionary.

See the PDF Reference for details.

Calling this function is equivalent to calling SIGNDOC_Field_clearCertSeedValueSubjectCertificates() and SIGNDOC_Field_addCertSeedValueSubjectCertificate().

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aPtrPointer to the first octet of the DER-encoded certificate.
[in]aSizeSize in octets of the DER-encoded certificate.
See also
SIGNDOC_Field_clearCertSeedValueSubjectCertificates(), SIGNDOC_Field_getCertSeedValueSubjectCertificate(), SIGNDOC_Field_getCertSeedValueSubjectCertificateUTF8()
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValueSubjectCertificateByIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
const void *  aPtr,
size_t  aSize 
)

Set a subject certificate in the certificate seed value dictionary.

See the PDF Reference for details.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndex0-based index of the subject certificate to be set. If aIndex equals the current number of values, the certificate will be added.
[in]aPtrPointer to the first octet of the DER-encoded certificate.
[in]aSizeSize in octets of the DER-encoded certificate.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearCertSeedValueSubjectCertificates(), SIGNDOC_Field_getCertSeedValueSubjectCertificate(), SIGNDOC_Field_getCertSeedValueSubjectCertificateUTF8()
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValueSubjectDN ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aName 
)

Set a subject distinguished name in the certificate seed value dictionary.

See the PDF Reference for details.

Calling this function is equivalent to calling SIGNDOC_Field_clearCertSeedValueSubjectDNs() and SIGNDOC_Field_addCertSeedValueSubjectDN(), but the encoding of aName is checked before modifying aObj.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name is not correctly encoded according to the specified encoding.

Note
RFC 4514 requires UTF-8 encoding.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aName (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aNameThe subject distinguished name formatted according to RFC 4514.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aName cannot be parsed.
See also
SIGNDOC_Field_clearCertSeedValueSubjectDNs(), SIGNDOC_Field_getCertSeedValueSubjectDN(), SIGNDOC_Field_getCertSeedValueSubjectDNUTF8()
SIGNDOC_Boolean SIGNDOC_Field_setCertSeedValueSubjectDNByIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
int  aEncoding,
const char *  aName 
)

Set a subject distinguished name in the certificate seed value dictionary.

See the PDF Reference for details.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name is not correctly encoded according to the specified encoding.

Note
RFC 4514 requires UTF-8 encoding.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the value to be set. If aIndex equals the current number of values, the value will be added.
[in]aEncodingThe encoding of aName (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aNameThe subject distinguished name formatted according to RFC 4514.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range or if aName cannot be parsed.
See also
SIGNDOC_Field_clearCertSeedValueSubjectDNs(), SIGNDOC_Field_getCertSeedValueSubjectDN(), SIGNDOC_Field_getCertSeedValueSubjectDNUTF8()
SIGNDOC_Boolean SIGNDOC_Field_setChoice ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
int  aEncoding,
const char *  aValue 
)

Set a choice value of a list box or combo box.

This function uses the choice value as export value.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Note
SIGNDOC_Field_getValue() and SIGNDOC_Field_setValue() use the export value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the choice to be set. If aIndex equals the current number of choice, the value will be added.
[in]aEncodingThe encoding of aValue (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aValueThe choice value and export value to be set. Complex scripts are supported, see Complex Scripts.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearChoices(), SIGNDOC_Field_getChoiceExport(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_setButtonValue()
SIGNDOC_Boolean SIGNDOC_Field_setChoiceWithExport ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
int  aEncoding,
const char *  aValue,
const char *  aExport 
)

Set a choice value of a list box or combo box.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Note
SIGNDOC_Field_getValue() and SIGNDOC_Field_setValue() use the export value.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the choice to be set. If aIndex equals the current number of choice, the value will be added.
[in]aEncodingThe encoding of aValue and aExport (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aValueThe choice value to be set. Complex scripts are supported, see Complex Scripts.
[in]aExportThe export value to be set.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearChoices(), SIGNDOC_Field_getChoiceExport(), SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_setButtonValue()
void SIGNDOC_Field_setEmptyFieldColor ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const struct SIGNDOC_Color aColor 
)

Set color used for empty signature field in TIFF document.

The default value is white. For non-TIFF documents, the value set by this function is ignored. The value is also ignored if compatibility with version 1.12 and earlier is requested.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aColorThe new color.
See also
SIGNDOC_Field_getEmptyFieldColor(), SIGNDOC_Field_setBackgroundColor(), SIGNDOC_Document_setCompatibility()
void SIGNDOC_Field_setJustification ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aJustification 
)

Set the justification of the widget.

The default value is SIGNDOC_FIELD_JUSTIFICATION_NONE.

For text fields and list boxes, the justification must be SIGNDOC_FIELD_JUSTIFICATION_LEFT, SIGNDOC_FIELD_JUSTIFICATION_CENTER, or SIGNDOC_FIELD_JUSTIFICATION_RIGHT. For other fields, the justification must be SIGNDOC_FIELD_JUSTIFICATION_NONE.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aJustificationThe justification: SIGNDOC_FIELD_JUSTIFICATION_NONE, SIGNDOC_FIELD_JUSTIFICATION_LEFT, SIGNDOC_FIELD_JUSTIFICATION_CENTER, or SIGNDOC_FIELD_JUSTIFICATION_RIGHT.
See also
SIGNDOC_Field_getJustification(), SIGNDOC_Field_selectWidget()
void SIGNDOC_Field_setLeft ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
double  aLeft 
)

Set the left coordinate.

The origin is in the bottom left corner of the page, see Coordinate Systems.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aLeftThe left coordinate.
See also
SIGNDOC_Field_getLeft(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBottom(), SIGNDOC_Field_setRight(), SIGNDOC_Field_setTop(), SIGNDOC_DOCUMENT_SETFIELDFLAGS_MOVE
void SIGNDOC_Field_setLockField ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aName 
)

Set a lock field.

Calling this function is equivalent to calling SIGNDOC_Field_clearLockFields() and SIGNDOC_Field_addLockField(), but the encoding of aName is checked before modifying aObj.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aName (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aNameThe name of the lock field to be set.
See also
SIGNDOC_Field_clearLockFields(), SIGNDOC_Field_getLockField(), SIGNDOC_Field_getLockFieldUTF8()
SIGNDOC_Boolean SIGNDOC_Field_setLockFieldByIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
int  aEncoding,
const char *  aName 
)

Set a lock field.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the value to be set. If aIndex equals the current number of values, the value will be added.
[in]aEncodingThe encoding of aName (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aNameThe name of the lock field to be set.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearLockFields(), SIGNDOC_Field_getLockField(), SIGNDOC_Field_getLockFieldUTF8()
void SIGNDOC_Field_setLockMDP ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aMDP 
)

Set the lock MDP value.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aMDPThe new lock MDP value:
  • 1 no changes to the document shall be permitted
  • 2 only filling in forms, instantiating page templates, and signing shall be permitted
  • 3 only filling in forms, instantiating page templates, signing, creating annotations, deleting annotations, and modifying annotations shall be permitted.
See also
SIGNDOC_Field_getDocMDP(), SIGNDOC_Field_getLockMDP()
void SIGNDOC_Field_setLockType ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aLockType 
)

Set the lock type.

The lock type defines the fields to be locked when signing this signature field.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aLockTypeThe new lock type: SIGNDOC_FIELD_LOCKTYPE_NONE, SIGNDOC_FIELD_LOCKTYPE_ALL, SIGNDOC_FIELD_LOCKTYPE_INCLUDE, or SIGNDOC_FIELD_LOCKTYPE_EXCLUDE.
See also
SIGNDOC_Field_addLockField(), SIGNDOC_Field_getLockType()
void SIGNDOC_Field_setMappingName ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aName 
)

Set the mapping name of the field.

The mapping name (if present) should be used for exporting field data. Currently, only PDF documents support mapping field names.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aName (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aNameThe mapping name of the field, empty to remove any mapping name.
See also
SIGNDOC_Field_getMappingName(), SIGNDOC_Field_getName(), SIGNDOC_Field_setAlternateName(), SIGNDOC_Field_setName(), SIGNDOC_Field_setNameW()
void SIGNDOC_Field_setMaxLen ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aMaxLen 
)

Set maximum length of text fields.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aMaxLenThe maximum length (in characters) of the text field or -1 for no maximum length.
See also
SIGNDOC_Field_getMaxLen()
void SIGNDOC_Field_setName ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aName 
)

Set the name of the field.

Different document types impose different restrictions on field names. PDF fields have hierarchical field names with components separated by dots.

SIGNDOC_Document_setField() operates on the field having a fully-qualified name which equals the name set by this function. In consequence, SIGNDOC_Document_setField() cannot change the name of a field.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the name is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aName (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aNameThe name of the field.
See also
SIGNDOC_Field_getName(), SIGNDOC_Field_getNameUTF8(), SIGNDOC_Field_setAlternateName(), SIGNDOC_Field_setMappingName(), SIGNDOC_Field_setNameW()
void SIGNDOC_Field_setNameW ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const wchar_t *  aName 
)

Set the name of the field.

Different document types impose different restrictions on field names. PDF fields have hierarchical field names with components separated by dots.

SIGNDOC_Document_setField() operates on the field having a fully-qualified name which equals the name set by this function. In consequence, SIGNDOC_Document_setField() cannot change the name of a field.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aNameThe name of the field.
See also
SIGNDOC_Field_getName(), SIGNDOC_Field_getNameUTF8(), SIGNDOC_Field_setAlternateName(), SIGNDOC_Field_setMappingName(), SIGNDOC_Field_setName()
void SIGNDOC_Field_setPage ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aPage 
)

Set the page number.

This function sets the index of the page on which this field occurs (1 for the first page).

By calling SIGNDOC_Document_getField(), SIGNDOC_Field_setPage(), and SIGNDOC_Document_setField(), you can move a field's widget to another page but be careful because the two pages may have different conversion factors, see SIGNDOC_Document_getConversionFactors().

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aPageThe 1-based page number of the field.
See also
SIGNDOC_Field_getPage(), SIGNDOC_Field_selectWidget()
void SIGNDOC_Field_setRight ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
double  aRight 
)

Set the right coordinate.

The origin is in the bottom left corner of the page, see Coordinate Systems. If coordinates are given in pixels (this is true for TIFF documents), this coordinate is exclusive.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aRightThe right coordinate.
See also
SIGNDOC_Field_getRight(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBottom(), SIGNDOC_Field_setLeft(), SIGNDOC_Field_setTop(), SIGNDOC_DOCUMENT_SETFIELDFLAGS_MOVE
void SIGNDOC_Field_setRotation ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aRotation 
)

Set the rotation of the widget contents.

The rotation is specified in degrees (counter-clockwise). The default value is 0.

For instance, if the rotation is 270, left-to right text will display top down.

Currently, the rotation must always be 0 for TIFF documents.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aRotationThe rotation: 0, 90, 180, or 270.
See also
SIGNDOC_Field_getRotation(), SIGNDOC_Field_selectWidget()
void SIGNDOC_Field_setSeedValueAddRevInfo ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
SIGNDOC_Boolean  aAddRevInfo 
)

Set the AddRevInfo flag in the certificate seed value dictionary.

This function sets both the AddRevInfo flag and the flag specifying that AddRevInfo is mandatory. (Both flags are set to the same value, that is, you cannot set AddRevInfo as optional constraint.)

If the AddRevInfo flag is set, revocation must be checked at signing time and revocation data must be included in the signature.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aAddRevInfoThe new AddRevInfo flag value.
See also
SIGNDOC_Field_getSeedValueAddRevInfo()
void SIGNDOC_Field_setSeedValueDigestMethod ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aDigestMethod 
)

Set a DigestMethod value in the seed value dictionary.

See SIGNDOC_Field_getSeedValueDigestMethod() for details.

Calling this function is equivalent to calling SIGNDOC_Field_clearSeedValueDigestMethods() and SIGNDOC_Field_addSeedValueDigestMethod(), but the encoding of aDigestMethod is checked before modifying aObj.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aDigestMethod (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aDigestMethodThe DigestMethod value.
See also
SIGNDOC_Field_clearSeedValueDigestMethods(), SIGNDOC_Field_getSeedValueDigestMethod(), SIGNDOC_Field_getSeedValueDigestMethodUTF8()
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueDigestMethodByIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
int  aEncoding,
const char *  aDigestMethod 
)

Set a DigestMethod value in the seed value dictionary.

See SIGNDOC_Field_getSeedValueDigestMethod() for details.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the value to be set. If aIndex equals the current number of values, the value will be added.
[in]aEncodingThe encoding of aDigestMethod (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aDigestMethodThe DigestMethod value.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearSeedValueDigestMethods(), SIGNDOC_Field_getSeedValueDigestMethod(), SIGNDOC_Field_getSeedValueDigestMethodUTF8()
void SIGNDOC_Field_setSeedValueDigestMethodRequired ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
SIGNDOC_Boolean  aRequired 
)

Set a flag from the signature field seed value dictionary that indicates whether the DigestMethod values are a required constraint or not.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aRequiredSIGNDOC_TRUE if the DigestMethod values are a required constraint, SIGNDOC_FALSE if the DigestMethod values are an optional constraint. If aRequired is SIGNDOC_TRUE, there should be at least one DigestMethod value.
See also
SIGNDOC_Field_getSeedValueDigestMethod(), SIGNDOC_Field_getSeedValueDigestMethodRequired()
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueFilter ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aFilter,
SIGNDOC_Boolean  aRequired 
)

Set the Filter entry (signature handler) in the signature field seed value dictionary.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aFilter (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aFilterThe name of the signature handler to be used for signing, e.g., "Adobe.PPKLite". An empty value will cause the Filter entry (constraint) to be removed. This should be an ASCII string.
[in]aRequiredSIGNDOC_TRUE if aFilter is a required constraint, SIGNDOC_FALSE if aFilter is an optional constraint. Adobe Reader seems to ignore this flag.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aFilter is invalid.
See also
SIGNDOC_Field_getSeedValueFilter(), SIGNDOC_Field_getSeedValueFilterRequired()
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueMDP ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aMDP 
)

Set the MDP value in the certificate seed value dictionary.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aMDPThe new MDP value:
  • -1 to remove the MDP value
  • 0 for an author signature
  • 1 for a certification signature, no changes to the document shall be permitted
  • 2 for a certification signature, only filling in forms, instantiating page templates, and signing shall be permitted
  • 3 for a certification signature, only filling in forms, instantiating page templates, signing, creating annotations, deleting annotations, and modifying annotations shall be permitted.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aMDP is invalid.
See also
SIGNDOC_Field_getSeedValueMDP()
void SIGNDOC_Field_setSeedValueSubFilter ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aSubFilter 
)

Set a SubFilter value in the seed value dictionary.

See SIGNDOC_Field_getSeedValueSubFilter() for details.

Calling this function is equivalent to calling SIGNDOC_Field_clearSeedValueSubFilters() and SIGNDOC_Field_addSeedValueSubFilter(), but the encoding of aSubFilter is checked before modifying aObj.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aSubFilter (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aSubFilterThe SubFilter value.
See also
SIGNDOC_Field_clearSeedValueSubFilters(), SIGNDOC_Field_getSeedValueSubFilter(), SIGNDOC_Field_getSeedValueSubFilterUTF8()
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueSubFilterByIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
int  aEncoding,
const char *  aSubFilter 
)

Set a SubFilter value in the seed value dictionary.

See SIGNDOC_Field_getSeedValueSubFilter() for details.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the value to be set. If aIndex equals the current number of values, the value will be added.
[in]aEncodingThe encoding of aSubFilter (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aSubFilterThe SubFilter value.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearSeedValueSubFilters(), SIGNDOC_Field_getSeedValueSubFilter(), SIGNDOC_Field_getSeedValueSubFilterUTF8()
void SIGNDOC_Field_setSeedValueSubFilterRequired ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
SIGNDOC_Boolean  aRequired 
)

Set a flag from the signature field seed value dictionary that indicates whether the SubFilter values are a required constraint or not.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aRequiredSIGNDOC_TRUE if the SubFilter values are a required constraint, SIGNDOC_FALSE if the SubFilter values are an optional constraint. If aRequired is SIGNDOC_TRUE, there should be at least one SubFilter value.
See also
SIGNDOC_Field_getSeedValueSubFilter(), SIGNDOC_Field_getSeedValueSubFilterRequired()
SIGNDOC_Boolean SIGNDOC_Field_setSeedValueTimeStamp ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aURL,
SIGNDOC_Boolean  aRequired 
)

Set the URL of an RFC 3161 time-stamp server in the signature field seed value dictionary.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Note
URLs must be ASCII strings.
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aURL (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aURLThe URL (must be ASCII), empty for no time-stamp server. Must be non-empty if aRequired is SIGNDOC_TRUE. The scheme must be http or https.
[in]aRequiredSIGNDOC_TRUE if a time stamp is required, SIGNDOC_FALSE if a time stamp is not required.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aURL is invalid.
See also
SIGNDOC_Field_getSeedValueTimeStampRequired(), SIGNDOC_Field_getSeedValueTimeStampServerURL()
SIGNDOC_Boolean SIGNDOC_Field_setTextFieldAttributes ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
const struct SIGNDOC_TextFieldAttributes aInput 
)

Set the text field attributes of the widget.

Font name and font size must be specified. The text color is optional. This function fails if any of the attributes of aInput are invalid.

Text field attributes can be specified for text fields, signature fields, list boxes, and combo boxes.

If SIGNDOC_TextFieldAttributes_isSet() returns SIGNDOC_FALSE for aInput, the text field attributes of the field will be removed by SIGNDOC_Document_setField().

The following rules apply if the field does not have text field attributes:

  • If the field inherits text field attributes from a ancestor field, those will be used by PDF processing software.
  • Otherwise, if the document has specifies text field attributes (see SIGNDOC_Document_getTextFieldAttributes()), those will be used by PDF processing software.
  • Otherwise, the field is not valid.

To avoid having invalid fields, SIGNDOC_Document_addField() and SIGNDOC_Document_setField() will use text field attributes specifying Helvetica as the font and black for the text color if the field does not inherit text field attributes from an ancestor field or from the document.

This function always fails for TIFF documents.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aInputThe new default text field attributes.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE on error.
See also
SIGNDOC_Field_getTextFieldAttributes(), SIGNDOC_Field_selectWidget()
void SIGNDOC_Field_setTop ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
double  aTop 
)

Set the top coordinate.

The origin is in the bottom left corner of the page, see Coordinate Systems. If coordinates are given in pixels (this is true for TIFF documents), this coordinate is exclusive.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aTopThe top coordinate.
See also
SIGNDOC_Field_getTop(), SIGNDOC_Field_selectWidget(), SIGNDOC_Field_setBottom(), SIGNDOC_Field_setLeft(), SIGNDOC_Field_setRight(), SIGNDOC_DOCUMENT_SETFIELDFLAGS_MOVE
void SIGNDOC_Field_setTopIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aTopIndex 
)

Set the index of the choice to be displayed in the first line of a list box.

This value is ignored for other field types.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aTopIndexThe index of the choice to be displayed in the first line of a list box.
See also
SIGNDOC_Field_getChoiceValue(), SIGNDOC_Field_getTopIndex()
void SIGNDOC_Field_setType ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aType 
)

Set the type of the field.

The default value is SIGNDOC_FIELD_TYPE_UNKNOWN.

Calling this function may affect the border color, see SIGNDOC_Field_setBorderColor().

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aTypeThe type of the field: SIGNDOC_FIELD_TYPE_PUSHBUTTON, SIGNDOC_FIELD_TYPE_CHECK_BOX, SIGNDOC_FIELD_TYPE_RADIO_BUTTON, SIGNDOC_FIELD_TYPE_TEXT, SIGNDOC_FIELD_TYPE_LIST_BOX, SIGNDOC_FIELD_TYPE_SIGNATURE_DIGSIG, SIGNDOC_FIELD_TYPE_SIGNATURE_SIGNDOC, or SIGNDOC_FIELD_TYPE_COMBO_BOX.
See also
SIGNDOC_Field_getType(), SIGNDOC_Field_setBorderColor()
void SIGNDOC_Field_setValue ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aEncoding,
const char *  aValue 
)

Set the value of the field.

Pushbutton fields and signature fields don't have a value, list boxes can have multiple values selected if SIGNDOC_FIELD_FLAGS_MULTISELECT is set.

Line breaks for multiline text fields (ie, text fields with flag SIGNDOC_FIELD_FLAGS_MULTILINE set) are encoded as "\r", "\n", or "\r\n". The behavior for values containing line breaks is undefined if the SIGNDOC_FIELD_FLAGS_MULTILINE flag is not set.

Calling this function is equivalent to calling SIGNDOC_Field_clearValues() and SIGNDOC_Field_addValue(), but the encoding of aValue is checked before modifying aObj.

After calling this function, SIGNDOC_Field_getValueIndex() will return -1.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aEncodingThe encoding of aValue (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aValueThe value to be set. Complex scripts are supported, see Complex Scripts.
See also
SIGNDOC_Field_clearValues(), SIGNDOC_Field_clickButton(), SIGNDOC_Field_getValue(), SIGNDOC_Field_getValueIndex(), SIGNDOC_Field_getValueUTF8(), SIGNDOC_Field_setValueIndex()
SIGNDOC_Boolean SIGNDOC_Field_setValueByIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex,
int  aEncoding,
const char *  aValue 
)

Set a value of the field.

Pushbutton fields and signature fields don't have a value, list boxes can have multiple values selected if SIGNDOC_FIELD_FLAGS_MULTISELECT is set.

After calling this function, SIGNDOC_Field_getValueIndex() will return -1.

Hard line breaks for multiline text fields (ie, text fields with flag SIGNDOC_FIELD_FLAGS_MULTILINE set) are encoded as "\r", "\n", or "\r\n". The behavior for values containing line breaks is undefined if the SIGNDOC_FIELD_FLAGS_MULTILINE flag is not set.

This function throws an exception of type SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR if the value is not correctly encoded according to the specified encoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexThe 0-based index of the value to be set. If aIndex equals the current number of values, the value will be added.
[in]aEncodingThe encoding of aValue (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aValueThe value to be set. Complex scripts are supported, see Complex Scripts.
Returns
SIGNDOC_TRUE if successful, SIGNDOC_FALSE if aIndex is out of range.
See also
SIGNDOC_Field_clearValues(), SIGNDOC_Field_clickButton(), SIGNDOC_Field_getValue(), SIGNDOC_Field_getValueIndex(), SIGNDOC_Field_getValueUTF8(), SIGNDOC_Field_setValueIndex()
void SIGNDOC_Field_setValueIndex ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aIndex 
)

Set the value index.

Radio button groups and check box fields can have multiple widgets having the same button value. For check box fields and radio buttons without SIGNDOC_FIELD_FLAGS_RADIOSINUNISON set, specifying the selected button by value string is ambiguous in that case. A 0-based value index can be used to find out which button is selected or to select a button.

Radio button groups and check box fields need not use a value index; in fact, they usually don't. However, you can always set a value index for radio button groups and check box fields.

If the value index is non-negative, SIGNDOC_Document_addField() and SIGNDOC_Document_setField() will use the value index instead of the string value set by SIGNDOC_Field_setValue().

Calling SIGNDOC_Field_setValueIndex() doesn't affect the return value of SIGNDOC_Field_getValue() as the value index is used by SIGNDOC_Document_addField() and SIGNDOC_Document_setField() only. However, successful calls to SIGNDOC_Document_addField() and SIGNDOC_Document_setField() will make SIGNDOC_Field_getValue() return the selected value.

For radio button groups with SIGNDOC_FIELD_FLAGS_RADIOSINUNISON set and non-unique button values and for check box fields with non-unique button values, for each button value, the lowest index having that button value is the canonical one. After calling SIGNDOC_Document_addField() or SIGNDOC_Document_setField(), getValueIndex() will return the canonical value index.

Don't forget to update the value index when adding or removing widgets!

SIGNDOC_Document_addField() and SIGNDOC_Document_setField() will fail if the value index is non-negative for fields other than radio button groups and check box fields.

The "Off" value never has a value index.

Note
addValue(), clearValues(), and SIGNDOC_Field_setValue() make the value index unset (ie, getValueIndex() will return -1). Therefore, you don't have to call setValueIndex(-1) to make SIGNDOC_Field_setValue() take effect on SIGNDOC_Document_addField() and SIGNDOC_Document_setField().
Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aIndexthe 0-based value index or -1 to make the value index unset.
See also
SIGNDOC_Field_clickButton(), SIGNDOC_Field_getValue(), SIGNDOC_Field_getValueIndex(), SIGNDOC_Field_setValue()
void SIGNDOC_Field_setWidgetFlags ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Field aObj,
int  aFlags 
)

Set the annotation flags of the widget.

The default value is SIGNDOC_FIELD_WIDGETFLAGS_PRINT. The annotation flags are used for PDF documents only. Currently, the semantics of the annotation flags are ignored by this software (ie, the flags are stored in the document, but they don't have any meaning to this software).

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Field object.
[in]aFlagsThe annotation flags of the widget: SIGNDOC_FIELD_WIDGETFLAGS_INVISIBLE, SIGNDOC_FIELD_WIDGETFLAGS_HIDDEN, SIGNDOC_FIELD_WIDGETFLAGS_PRINT, SIGNDOC_FIELD_WIDGETFLAGS_NOZOOM, SIGNDOC_FIELD_WIDGETFLAGS_NOROTATE, SIGNDOC_FIELD_WIDGETFLAGS_NOVIEW, SIGNDOC_FIELD_WIDGETFLAGS_READONLY, SIGNDOC_FIELD_WIDGETFLAGS_LOCKED, SIGNDOC_FIELD_WIDGETFLAGS_TOGGLENOVIEW, and SIGNDOC_FIELD_WIDGETFLAGS_LOCKEDCONTENTS.
See also
SIGNDOC_Field_getWidgetFlags(), SIGNDOC_Field_selectWidget()

The documentation for this class was generated from the following file: