SignDoc SDK (C)  5.0.0
SignDocSDK-c.h File Reference

SignDoc SDK C API. More...

#include <stdio.h>
#include <wchar.h>

Classes

class  SIGNDOC_Point
 A point (page coordinates or canvas coordinates depending on context). More...
 
class  SIGNDOC_Rect
 A rectangle (document coordinates). More...
 
class  SIGNDOC_RenderOutput
 Output of SIGNDOC_Document_renderPageAsImage() and SIGNDOC_Document_renderPageAsSignDocImage(). More...
 
class  SIGNDOC_ImageRect
 A rectangle for use with SIGNDOC_Image. More...
 
class  SIGNDOC_WeightedFrame
 A frame and its weight. More...
 

Macros

#define SDCAPI
 
#define SIGNDOC_FALSE   0
 Boolean value: false. More...
 
#define SIGNDOC_TRUE   1
 Boolean value: true. More...
 
#define SIGNDOC_EXCEPTION_TYPE_BAD_ALLOC   1
 Exception class: std::bad_alloc. More...
 
#define SIGNDOC_EXCEPTION_TYPE_PDF   2
 Exception class: de::softpro::sppdf::Exception. More...
 
#define SIGNDOC_EXCEPTION_TYPE_STL   3
 Exception class: std::exception. More...
 
#define SIGNDOC_EXCEPTION_TYPE_GENERIC   4
 Exception class: everything else. More...
 
#define SIGNDOC_EXCEPTION_TYPE_SPOOC_GENERIC   5
 Exception class: de::softpro::spooc::Exception. More...
 
#define SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR   6
 Exception class: de::softpro::spooc::EncodingError. More...
 
#define SIGNDOC_EXCEPTION_TYPE_SPOOC_IO   7
 Exception class: de::softpro::spooc::IOError. More...
 
#define SIGNDOC_EXCEPTION_TYPE_INVALID_ARGUMENT   8
 Exception class: std::invalid_argument. More...
 
#define SIGNDOC_ANNOTATION_TYPE_UNKNOWN   0
 Annotation type: Unknown annotation type. More...
 
#define SIGNDOC_ANNOTATION_TYPE_LINE   1
 Annotation type: Line annotation. More...
 
#define SIGNDOC_ANNOTATION_TYPE_SCRIBBLE   2
 Annotation type: Scribble annotation (freehand scribble). More...
 
#define SIGNDOC_ANNOTATION_TYPE_FREETEXT   3
 Annotation type: FreeText annotation. More...
 
#define SIGNDOC_ANNOTATION_LINEENDING_UNKNOWN   0
 Line ending style: Unknown line ending style. More...
 
#define SIGNDOC_ANNOTATION_LINEENDING_NONE   1
 Line ending style: No line ending. More...
 
#define SIGNDOC_ANNOTATION_LINEENDING_ARROW   2
 Line ending style: Two short lines forming an arrowhead. More...
 
#define SIGNDOC_ANNOTATION_HALIGNMENT_LEFT   0
 Horizontal alignment: Align left. More...
 
#define SIGNDOC_ANNOTATION_HALIGNMENT_CENTER   1
 Horizontal alignment: Center. More...
 
#define SIGNDOC_ANNOTATION_HALIGNMENT_RIGHT   2
 Horizontal alignment: Align right. More...
 
#define SIGNDOC_ANNOTATION_FLAGS_AUTO_ALIGNMENT   0x200
 Flag for SIGNDOC_Annotation_setFlags(): Align left if the text begins with an LTR run, align right if the text begins with an RTL run. More...
 
#define SIGNDOC_ANNOTATION_FLAGS_LTR   0x1000
 Flag for SIGNDOC_Annotation_setFlags(): Paragraph direction: LTR. More...
 
#define SIGNDOC_ANNOTATION_FLAGS_RTL   0x2000
 Flag for SIGNDOC_Annotation_setFlags(): Paragraph direction: RTL. More...
 
#define SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR   0x4000
 Flag for SIGNDOC_Annotation_setFlags(): Choose direction automatically, default to LTR. More...
 
#define SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL   0x8000
 Flag for SIGNDOC_Annotation_setFlags(): Choose direction automatically, default to RTL. More...
 
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_UNKNOWN   0
 Document type: For SIGNDOC_DocumentLoader_ping() and SIGNDOC_DocumentLoader_pingMemory(). More...
 
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_PDF   1
 Document type: PDF document. More...
 
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_TIFF   2
 Document type: TIFF document. More...
 
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_OTHER   3
 Document type: Other document. More...
 
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_FDF   4
 Document type: FDF document. More...
 
#define SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL   0x01
 Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Save incrementally (PDF). More...
 
#define SIGNDOC_DOCUMENT_SAVEFLAGS_REMOVE_UNUSED   0x02
 Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Remove unused objects (PDF). More...
 
#define SIGNDOC_DOCUMENT_SAVEFLAGS_LINEARIZED   0x04
 Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Linearize the document (PDF). More...
 
#define SIGNDOC_DOCUMENT_SAVEFLAGS_PDF_1_4   0x08
 Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Do not use features introduced after PDF 1.4 for saving the document. More...
 
#define SIGNDOC_DOCUMENT_SAVEFLAGS_PDFA_BUTTONS   0x10
 Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Fix appearance streams of check boxes and radio buttons for conformance with PDF/A-1 without Technical Corrigendum 2. More...
 
#define SIGNDOC_DOCUMENT_SAVEFLAGS_AUTO_INCREMENTAL   0x20
 Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Automatically set SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL if needed, automatically reset SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL if not allowed. More...
 
#define SIGNDOC_DOCUMENT_COPYTOSTREAMFLAGS_UNSAVED   0x01
 Flag for SIGNDOC_Document_copyToStream() and SIGNDOC_Document_copyToMemory(): Include unsaved changes. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_FAIL   0x01
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Fail if no suitable font is found. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_MOVE   0x08
 Flags modifying the behavior of SIGNDOC_Document_setField(): Move or resize field. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP   0x10
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Keep appearance streams. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP   0x20
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Update appearance streams. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FIT_HEIGHT_ONLY   0x40
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Compute the default font size such that the field contents fit the height of the field. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FORCE_BORDER_WIDTH   0x80
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Use the border width specified by the field even if that will obliterate the field contents. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_DONT_BREAK_LINES   0x100
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Do not break lines in multiline text fields. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_AUTO_ALIGNMENT   0x200
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Align left if the text begins with an LTR run, align right if the text begins with an RTL run. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR   0x1000
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Paragraph direction: LTR. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL   0x2000
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Paragraph direction: RTL. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR   0x4000
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Choose direction automatically, default to LTR. More...
 
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL   0x8000
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Choose direction automatically, default to RTL. More...
 
#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_INCLUDE_SIGNATURE_UNSIGNED   0x01
 Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Include unsigned signature fields. More...
 
#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_INCLUDE_SIGNATURE_SIGNED   0x02
 Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Include signed signature fields. More...
 
#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_INCLUDE_HIDDEN   0x04
 Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Include hidden and invisible widgets. More...
 
#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_KEEP_STRUCTURE   0x08
 Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Do not modify logical structure. More...
 
#define SIGNDOC_DOCUMENT_FLATTENANNOTATIONSFLAGS_INCLUDE_HIDDEN   0x04
 Flags modifying the behavior of SIGNDOC_Document_flattenAnnotations(): Include hidden and invisible annotations. More...
 
#define SIGNDOC_DOCUMENT_FLATTENANNOTATIONSFLAGS_KEEP_STRUCTURE   0x08
 Flags modifying the behavior of SIGNDOC_Document_flattenAnnotations(): Do not modify logical structure. More...
 
#define SIGNDOC_DOCUMENT_FLATTENANNOTATIONSFLAGS_KEEP_STRCUTURE   SIGNDOC_DOCUMENT_FLATTENANNOTATIONSFLAGS_KEEP_STRUCTURE
 Bug compatibility. More...
 
#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_HSPACE   0x0001
 Flags modifying the behavior of SIGNDOC_Document_findText(): Ignore horizontal whitespace (may be required). More...
 
#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_HYPHENATION   0x0002
 Flags modifying the behavior of SIGNDOC_Document_findText(): Ignore hyphenation. More...
 
#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_SEQUENCE   0x0004
 Flags modifying the behavior of SIGNDOC_Document_findText(): Use character positions instead of searching the characters in the document in the sequence they are encountered. More...
 
#define SIGNDOC_DOCUMENT_EXPORTFLAGS_TOP   0x01
 Flags modifying the behavior of SIGNDOC_Document_exportFields(), SIGNDOC_Document_exportFieldsToMemory(), SIGNDOC_Document_exportProperties(), and SIGNDOC_Document_exportPropertiesToMemory(): Include XML declaration and schema for top-level element. More...
 
#define SIGNDOC_DOCUMENT_IMPORTFLAGS_ATOMIC   0x01
 Flags modifying the behavior of SIGNDOC_Document_importProperties() and SIGNDOC_Document_importPropertiesFromMemory(): all properties from XML or none (on error). More...
 
#define SIGNDOC_DOCUMENT_IMPORTIMAGEFLAGS_KEEP_ASPECT_RATIO   0x01
 Flags modifying the behavior of SIGNDOC_Document_addImageFromFile(), SIGNDOC_Document_addImageFromFile2(), SIGNDOC_Document_addImageFromMemory(), SIGNDOC_Document_addImageFromMemory2(), SIGNDOC_Document_importPageFromImageBlob() SIGNDOC_Document_importPageFromImageBlob2(), SIGNDOC_Document_importPageFromImageFile(), and SIGNDOC_Document_importPageFromImageFile2(): Keep aspect ratio of image, center image on white background. More...
 
#define SIGNDOC_DOCUMENT_IMPORTIMAGEFLAGS_BRIGHTEST_TRANSPARENT   0x02
 Flags modifying the behavior of SIGNDOC_Document_addImageFromFile(), SIGNDOC_Document_addImageFromFile2(), SIGNDOC_Document_addImageFromMemory(), SIGNDOC_Document_addImageFromMemory2(), SIGNDOC_Document_importPageFromImageBlob(), SIGNDOC_Document_importPageFromImageBlob2(), SIGNDOC_Document_importPageFromImageFile(), and SIGNDOC_Document_importPageFromImageFile2(): Make the brightest color transparent. More...
 
#define SIGNDOC_DOCUMENT_KEEPORREMOVE_KEEP   0
 Tell SIGNDOC_Document_removePages() to keep or to remove the specified pages: Keep the specified pages, remove all other pages. More...
 
#define SIGNDOC_DOCUMENT_KEEPORREMOVE_REMOVE   1
 Tell SIGNDOC_Document_removePages() to keep or to remove the specified pages: Remove the specified pages, keep all other pages. More...
 
#define SIGNDOC_RETURNCODE_OK   0
 Return code: No error (0). More...
 
#define SIGNDOC_RETURNCODE_INVALID_ARGUMENT   1
 Return code: Invalid argument (1). More...
 
#define SIGNDOC_RETURNCODE_FIELD_NOT_FOUND   2
 Return code: Field not found (2). More...
 
#define SIGNDOC_RETURNCODE_INVALID_PROFILE   3
 Return code: Invalid profile (3). More...
 
#define SIGNDOC_RETURNCODE_INVALID_IMAGE   4
 Return code: Invalid image (4). More...
 
#define SIGNDOC_RETURNCODE_TYPE_MISMATCH   5
 Return code: Type mismatch (5). More...
 
#define SIGNDOC_RETURNCODE_FONT_NOT_FOUND   6
 Return code: Font not found (6). More...
 
#define SIGNDOC_RETURNCODE_NOT_SUPPORTED   8
 Return code: Operation not supported (8). More...
 
#define SIGNDOC_RETURNCODE_IO_ERROR   9
 Return code: I/O error (9). More...
 
#define SIGNDOC_RETURNCODE_NOT_VERIFIED   10
 Return code: Signature not verified (10). More...
 
#define SIGNDOC_RETURNCODE_PROPERTY_NOT_FOUND   11
 Return code: Property not found (11). More...
 
#define SIGNDOC_RETURNCODE_PAGE_NOT_FOUND   12
 Return code: Page not found (12). More...
 
#define SIGNDOC_RETURNCODE_WRONG_COLLECTION   13
 Return code: Wrong collection (13). More...
 
#define SIGNDOC_RETURNCODE_FIELD_EXISTS   14
 Return code: Field already exists (14). More...
 
#define SIGNDOC_RETURNCODE_LICENSE_ERROR   15
 Return code: License error (15). More...
 
#define SIGNDOC_RETURNCODE_UNEXPECTED_ERROR   16
 Return code: Unexpected error (16). More...
 
#define SIGNDOC_RETURNCODE_CANCELLED   17
 Return code: Operation cancalled (17). More...
 
#define SIGNDOC_RETURNCODE_NO_BIOMETRIC_DATA   18
 Return code: No biometric data (18). More...
 
#define SIGNDOC_RETURNCODE_FIELD_NOT_SIGNED   20
 Return code: Field not signed (20). More...
 
#define SIGNDOC_RETURNCODE_INVALID_SIGNATURE   21
 Return code: Signature is not valid (21). More...
 
#define SIGNDOC_RETURNCODE_ANNOTATION_NOT_FOUND   22
 Return code: Annotation not found (22). More...
 
#define SIGNDOC_RETURNCODE_ATTACHMENT_NOT_FOUND   23
 Return code: Attachment not found (23). More...
 
#define SIGNDOC_RETURNCODE_ATTACHMENT_EXISTS   24
 Return code: Attachment already exists (24). More...
 
#define SIGNDOC_RETURNCODE_NO_CERTIFICATE   25
 Return code: No certificate found (25). More...
 
#define SIGNDOC_RETURNCODE_AMBIGUOUS_CERTIFICATE   26
 Return code: Ambiguous certificate (26). More...
 
#define SIGNDOC_RETURNCODE_NOT_ALLOWED   27
 Return code: Operation not allowed (27). More...
 
#define SIGNDOC_RETURNCODE_INVALID_STRUCTURE   28
 Return code: Invalid logical structure (28). More...
 
#define SIGNDOC_RETURNCODE_UNKNOWN_PARAMETER   29
 Return code: Unknown parameter (29). More...
 
#define SIGNDOC_RETURNCODE_INVALID_VALUE   30
 Return code: Invalid value (30). More...
 
#define SIGNDOC_RETURNCODE_NOT_AVAILABLE   31
 Return code: Not available (31). More...
 
#define SIGNDOC_DOCUMENT_CHECKATTACHMENTRESULT_MATCH   0
 Result of SIGNDOC_Document_checkAttachment(): The attachment matches its checksum. More...
 
#define SIGNDOC_DOCUMENT_CHECKATTACHMENTRESULT_NO_CHECKSUM   1
 Result of SIGNDOC_Document_checkAttachment(): The attachment does not have a checksum. More...
 
#define SIGNDOC_DOCUMENT_CHECKATTACHMENTRESULT_MISMATCH   2
 Result of SIGNDOC_Document_checkAttachment(): The attachment does not match its checksum. More...
 
#define SIGNDOC_DOCUMENT_HALIGNMENT_LEFT   0
 Horizontal alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align left. More...
 
#define SIGNDOC_DOCUMENT_HALIGNMENT_CENTER   1
 Horizontal alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Center. More...
 
#define SIGNDOC_DOCUMENT_HALIGNMENT_RIGHT   2
 Horizontal alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align right. More...
 
#define SIGNDOC_DOCUMENT_HALIGNMENT_AUTO   4
 Horizontal alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align left if the text begins with an LTR run, align right if the text begins with an RTL run. More...
 
#define SIGNDOC_DOCUMENT_VALIGNMENT_TOP   0
 Vertical alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align top. More...
 
#define SIGNDOC_DOCUMENT_VALIGNMENT_CENTER   1
 Vertical alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Center. More...
 
#define SIGNDOC_DOCUMENT_VALIGNMENT_BOTTOM   2
 Vertical alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align bottom. More...
 
#define SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_COMPAT   0x01
 Flag for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Behave like SIGNDOC_Document_addTextRect() of SignDoc SDK 4.2.0.8 and earlier. More...
 
#define SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_LTR   0x1000
 Flag for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Paragraph direction: LTR. More...
 
#define SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_RTL   0x2000
 Flag for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Paragraph direction: RTL. More...
 
#define SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_LTR   0x4000
 Flag for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Choose direction automatically, default to LTR. More...
 
#define SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_RTL   0x8000
 Flag for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Choose direction automatically, default to RTL. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_RELAX_BYTE_RANGE   0x01
 Flag for SIGNDOC_Document_setFlags(): Relax checking of ByteRange. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_AMBIGUOUS_BUTTON_VALUE_EMPTY   0x02
 Flag for SIGNDOC_Document_setFlags(): Make SIGNDOC_Document_exportFields(), SIGNDOC_Document_exportFieldsToMemory(), SIGNDOC_Document_getField(), SIGNDOC_Document_getFields(), and SIGNDOC_Document_getFieldsOfPage() return an empty button value if there are multiple non-Off values for a check box field. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_USE_DSS_ONLY   0x04
 Flag for SIGNDOC_Document_setFlags(): Use only the Document Security Store for building the certificate chain and for checking the revocation state of the certificates, ignore any certificates, CRLs, and OCSP responses from the signature proper. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_NO_KERNING_FOR_STANDARD_FONTS   0x08
 Flag for SIGNDOC_Document_setFlags(): Disable kerning for standard fonts. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_UNUSED_0X10   0x10
 Flag for SIGNDOC_Document_setFlags(): Unused. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES   0x20
 Flag for SIGNDOC_Document_setFlags(): Do not remove escape sequences specifying the natural language from text strings. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_REQUIRE_ALTERNATE_FIELD_NAME   0x40
 Flag for SIGNDOC_Document_setFlags(): Require alternate field names. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_REQUIRE_LANG   0x80
 Flag for SIGNDOC_Document_setFlags(): Require language identifier for text. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_INSERT_AT_END   0x100
 Flag for SIGNDOC_Document_setFlags(): Do not attempt to insert new objects into the logical structure in reading order. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_USE_ESCAPE_SEQUENCES   0x200
 Flag for SIGNDOC_Document_setFlags(): Use escape sequences to encode the natural language in alternate field names. More...
 
#define SIGNDOC_DOCUMENT_FLAGS_FAIL_FOR_BROKEN_TARGET_STRUCTURE   0x400
 Flag for SIGNDOC_Document_setFlags(): Fail if a new object cannot be inserted into the logical structure of the target document due to that logical structure being broken. More...
 
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_SIGNATURES   0x01
 Flag for SIGNDOC_Document_setShootInFoot(): Allow operations to break existing signatures in signature fields. More...
 
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_PERMISSIONS   0x02
 Flag for SIGNDOC_Document_setShootInFoot(): Allow operations to break signatures which grant permissions. More...
 
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_INVALID_CERTIFICATE   0x04
 Flag for SIGNDOC_Document_setShootInFoot(): Allow signing with a certificate that is not yet valid or no longer valid or which is not qualified for digital signatures. More...
 
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_NON_STANDARD_EXTERNAL_FONTS   0x08
 Flag for SIGNDOC_Document_setShootInFoot(): Allow non-standard usage of external (non-embedded) TrueType and CFF fonts. More...
 
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_NOT_SHARED   0x10
 Flag for SIGNDOC_Document_setShootInFoot(): Assume that appearance dictionaries and appearance streams are not shared. More...
 
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_SHARED   0x20
 Flag for SIGNDOC_Document_setShootInFoot(): Always assume that appearance dictionaries and appearance streams are shared. More...
 
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_DONT_VERIFY_AFTER_SIGNING   0x40
 Flag for SIGNDOC_Document_setShootInFoot(): Disable verification of signature after signing by SIGNDOC_Document_addSignature(). More...
 
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_ALL_CURVES   0x80
 Flag for SIGNDOC_Document_setShootInFoot(): Allow elliptic curves for signing which are not supported by Adobe products for Windows. More...
 
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_TAGGED_PDF   0x100
 Flag for SIGNDOC_Document_setShootInFoot(): Allow operations to break Tagged PDF (and PDF/UA). More...
 
#define SIGNDOC_DOCUMENT_UPDATEDSSFLAGS_SIMULATE   0x01
 Flags for SIGNDOC_Document_updateDSS() and SIGNDOC_Document_updateDSS2(): Perform all the checks but do not modify the document. More...
 
#define SIGNDOC_DOCUMENT_UPDATEDSSFLAGS_VRI   0x02
 Flags for SIGNDOC_Document_updateDSS() and SIGNDOC_Document_updateDSS2(): Create VRI dictionaries. More...
 
#define SIGNDOC_DOCUMENTLOADER_REMAININGDAYS_PRODUCT   0
 Specify which expiry date shall be used by SIGNDOC_DocumentLoader_getRemainingDays(): Use the expiry date for the product. More...
 
#define SIGNDOC_DOCUMENTLOADER_REMAININGDAYS_SIGNING   1
 Specify which expiry date shall be used by SIGNDOC_DocumentLoader_getRemainingDays(): Use the expiry date for signing documents. More...
 
#define SIGNDOC_DOCUMENTLOADER_FLAGS_MAP_INTO_MEMORY   0x01
 Flag for SIGNDOC_DocumentLoader_setFlags(): map input file into memory. More...
 
#define SIGNDOC_FIELD_TYPE_UNKNOWN   0
 Field types: Unknown type. More...
 
#define SIGNDOC_FIELD_TYPE_PUSHBUTTON   1
 Field types: Pushbutton (PDF). More...
 
#define SIGNDOC_FIELD_TYPE_CHECK_BOX   2
 Field types: Check box field (PDF). More...
 
#define SIGNDOC_FIELD_TYPE_RADIO_BUTTON   3
 Field types: Radio button (radio button group) (PDF). More...
 
#define SIGNDOC_FIELD_TYPE_TEXT   4
 Field types: Text field (PDF). More...
 
#define SIGNDOC_FIELD_TYPE_LIST_BOX   5
 Field types: List box (PDF). More...
 
#define SIGNDOC_FIELD_TYPE_SIGNATURE_DIGSIG   6
 Field types: Digital signature field (Adobe DigSig in PDF, SOFTPRO signature in TIFF). More...
 
#define SIGNDOC_FIELD_TYPE_SIGNATURE_SIGNDOC   7
 Field types: Digital signature field (traditional SignDoc, no longer supported) (PDF). More...
 
#define SIGNDOC_FIELD_TYPE_COMBO_BOX   8
 Field types: Combo box (drop-down box) (PDF). More...
 
#define SIGNDOC_FIELD_FLAGS_READONLY   (1 << 0)
 Field flags: ReadOnly. More...
 
#define SIGNDOC_FIELD_FLAGS_REQUIRED   (1 << 1)
 Field flags: Required. More...
 
#define SIGNDOC_FIELD_FLAGS_NOEXPORT   (1 << 2)
 Field flags: NoExport. More...
 
#define SIGNDOC_FIELD_FLAGS_NOTOGGLETOOFF   (1 << 3)
 Field flags: NoToggleToOff. More...
 
#define SIGNDOC_FIELD_FLAGS_RADIO   (1 << 4)
 Field flags: Radio. More...
 
#define SIGNDOC_FIELD_FLAGS_PUSHBUTTON   (1 << 5)
 Field flags: Pushbutton. More...
 
#define SIGNDOC_FIELD_FLAGS_RADIOSINUNISON   (1 << 6)
 Field flags: RadiosInUnison. More...
 
#define SIGNDOC_FIELD_FLAGS_MULTILINE   (1 << 7)
 Field flags: Multiline (for text fields). More...
 
#define SIGNDOC_FIELD_FLAGS_PASSWORD   (1 << 8)
 Field flags: Password. More...
 
#define SIGNDOC_FIELD_FLAGS_FILESELECT   (1 << 9)
 Field flags: FileSelect. More...
 
#define SIGNDOC_FIELD_FLAGS_DONOTSPELLCHECK   (1 << 10)
 Field flags: DoNotSpellCheck. More...
 
#define SIGNDOC_FIELD_FLAGS_DONOTSCROLL   (1 << 11)
 Field flags: DoNotScroll. More...
 
#define SIGNDOC_FIELD_FLAGS_COMB   (1 << 12)
 Field flags: Comb. More...
 
#define SIGNDOC_FIELD_FLAGS_RICHTEXT   (1 << 13)
 Field flags: RichText. More...
 
#define SIGNDOC_FIELD_FLAGS_COMBO   (1 << 14)
 Field flags: Combo (always set for combo boxes). More...
 
#define SIGNDOC_FIELD_FLAGS_EDIT   (1 << 15)
 Field flags: Edit (for combo boxes): If this flag is set, the user can enter an arbitrary value. More...
 
#define SIGNDOC_FIELD_FLAGS_SORT   (1 << 16)
 Field flags: Sort (for list boxes and combo boxes). More...
 
#define SIGNDOC_FIELD_FLAGS_MULTISELECT   (1 << 17)
 Field flags: MultiSelect (for list boxes). More...
 
#define SIGNDOC_FIELD_FLAGS_COMMITONSELCHANGE   (1 << 18)
 Field flags: CommitOnSelChange (for list boxes and combo boxes). More...
 
#define SIGNDOC_FIELD_FLAGS_SINGLEPAGE   (1 << 28)
 Field flags: Signature applies to the containing page only (TIFF only). More...
 
#define SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING   (1 << 29)
 Field flags: Signature fields can be inserted after signing this field (TIFF only). More...
 
#define SIGNDOC_FIELD_FLAGS_INVISIBLE   (1 << 30)
 Field flags: Invisible (TIFF only). More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_INVISIBLE   (1 << (1 - 1))
 Annotation flags of a widget: do not display non-standard annotation. More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_HIDDEN   (1 << (2 - 1))
 Annotation flags of a widget: do not display or print or interact. More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_PRINT   (1 << (3 - 1))
 Annotation flags of a widget: print the annotation. More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_NOZOOM   (1 << (4 - 1))
 Annotation flags of a widget: do not scale to match magnification. More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_NOROTATE   (1 << (5 - 1))
 Annotation flags of a widget: do not rotate to match page's rotation. More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_NOVIEW   (1 << (6 - 1))
 Annotation flags of a widget: do not display or interact. More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_READONLY   (1 << (7 - 1))
 Annotation flags of a widget: do not interact. More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_LOCKED   (1 << (8 - 1))
 Annotation flags of a widget: annotation cannot be deleted or modified, but its value can be changed. More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_TOGGLENOVIEW   (1 << (9 - 1))
 Annotation flags of a widget: toggle SIGNDOC_FIELD_WIDGETFLAGS_NOVIEW for certain events. More...
 
#define SIGNDOC_FIELD_WIDGETFLAGS_LOCKEDCONTENTS   (1 << (10 - 1))
 Annotation flags of a widget: value cannot be changed. More...
 
#define SIGNDOC_FIELD_JUSTIFICATION_NONE   0
 Justification for text fields and list boxes: Justification does not apply (not a text field or a list box). More...
 
#define SIGNDOC_FIELD_JUSTIFICATION_LEFT   1
 Justification for text fields and list boxes: Left-justified. More...
 
#define SIGNDOC_FIELD_JUSTIFICATION_CENTER   2
 Justification for text fields and list boxes: Centered. More...
 
#define SIGNDOC_FIELD_JUSTIFICATION_RIGHT   3
 Justification for text fields and list boxes: Right-justified. More...
 
#define SIGNDOC_FIELD_BORDERSTYLE_OTHER   0
 Border style: Unknown/unsupported border style. More...
 
#define SIGNDOC_FIELD_BORDERSTYLE_SOLID   1
 Border style: Solid rectangle. More...
 
#define SIGNDOC_FIELD_BORDERSTYLE_DASHED   2
 Border style: Dashed rectangle. More...
 
#define SIGNDOC_FIELD_BORDERSTYLE_BEVELED   3
 Border style: Rectangle looking embossed. More...
 
#define SIGNDOC_FIELD_BORDERSTYLE_INSET   4
 Border style: Rectangle looking engraved. More...
 
#define SIGNDOC_FIELD_BORDERSTYLE_UNDERLINE   5
 Border style: Single line at bottom. More...
 
#define SIGNDOC_FIELD_BUTTONSTYLE_DEFAULT   0
 Style used for check boxes and radio buttons: Default button style. More...
 
#define SIGNDOC_FIELD_BUTTONSTYLE_OTHER   1
 Style used for check boxes and radio buttons: Unknown/unsupported style. More...
 
#define SIGNDOC_FIELD_BUTTONSTYLE_CHECK_MARK   2
 Style used for check boxes and radio buttons: Check mark. More...
 
#define SIGNDOC_FIELD_BUTTONSTYLE_CROSS   3
 Style used for check boxes and radio buttons: Cross. More...
 
#define SIGNDOC_FIELD_BUTTONSTYLE_STAR   4
 Style used for check boxes and radio buttons: Star. More...
 
#define SIGNDOC_FIELD_BUTTONSTYLE_CIRCLE   5
 Style used for check boxes and radio buttons: Circle (default for radio buttons). More...
 
#define SIGNDOC_FIELD_BUTTONSTYLE_SQUARE   6
 Style used for check boxes and radio buttons: Square. More...
 
#define SIGNDOC_FIELD_BUTTONSTYLE_DIAMOND   7
 Style used for check boxes and radio buttons: Diamond. More...
 
#define SIGNDOC_FIELD_LOCKTYPE_NA   0
 Fields to be locked when signing this signature field: Not a signature field. More...
 
#define SIGNDOC_FIELD_LOCKTYPE_NONE   1
 Fields to be locked when signing this signature field: Don't lock any fields. More...
 
#define SIGNDOC_FIELD_LOCKTYPE_ALL   2
 Fields to be locked when signing this signature field: Lock all fields in the document. More...
 
#define SIGNDOC_FIELD_LOCKTYPE_INCLUDE   3
 Fields to be locked when signing this signature field: Lock all lock fields specified by SIGNDOC_Field_addLockField() etc. More...
 
#define SIGNDOC_FIELD_LOCKTYPE_EXCLUDE   4
 Fields to be locked when signing this signature field: Lock all fields except the lock fields specified by SIGNDOC_Field_addLockField() etc. More...
 
#define SIGNDOC_FIELD_SIGNATURETYPE_NOT_A_SIGNATURE_FIELD   0
 Signature type: The field is not a signature field. More...
 
#define SIGNDOC_FIELD_SIGNATURETYPE_NOT_SIGNED   1
 Signature type: The signature field is not signed. More...
 
#define SIGNDOC_FIELD_SIGNATURETYPE_APPROVAL   2
 Signature type: Approval signature (that's the normal type of signature). More...
 
#define SIGNDOC_FIELD_SIGNATURETYPE_CERTIFICATION   3
 Signature type: Certification signature (signed by the author). More...
 
#define SIGNDOC_FIELD_SIGNATURETYPE_DOCUMENT_TIME_STAMP   4
 Signature type: Document time stamp. More...
 
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_SUBJECTCERT   0x01
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): SubjectCert. More...
 
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_ISSUERCERT   0x02
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): IssuerCert. More...
 
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_POLICY   0x04
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): Policy. More...
 
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_SUBJECTDN   0x08
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): SubjectDN. More...
 
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_KEYUSAGE   0x20
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): KeyUsage. More...
 
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_URL   0x40
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): URL. More...
 
#define SIGNDOC_PROPERTY_TYPE_BOOLEAN   1
 Property types: boolean. More...
 
#define SIGNDOC_PROPERTY_TYPE_INTEGER   2
 Property types: integer. More...
 
#define SIGNDOC_PROPERTY_TYPE_STRING   4
 Property types: string. More...
 
#define SIGNDOC_RENDERPARAMETERS_TYPE_UNDEFINED   0
 Return value of SIGNDOC_RenderParameters_getType(): The specified parameter is not defined. More...
 
#define SIGNDOC_RENDERPARAMETERS_TYPE_BOOLEAN   1
 Return value of SIGNDOC_RenderParameters_getType(): Boolean. More...
 
#define SIGNDOC_RENDERPARAMETERS_TYPE_INTEGER   2
 Return value of SIGNDOC_RenderParameters_getType(): Integer. More...
 
#define SIGNDOC_RENDERPARAMETERS_TYPE_NUMBER   3
 Return value of SIGNDOC_RenderParameters_getType(): Floating-point number. More...
 
#define SIGNDOC_RENDERPARAMETERS_TYPE_STRING   4
 Return value of SIGNDOC_RenderParameters_getType(): String. More...
 
#define SIGNDOC_RENDERPARAMETERS_TYPE_STRING2   6
 Return value of SIGNDOC_RenderParameters_getType(): String (with two parameter names). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_UNDEFINED   0
 Return value of SIGNDOC_SignatureParameters_getType(): The specified parameter is not defined. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_INTEGER   2
 Return value of SIGNDOC_SignatureParameters_getType(): Integer. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_STRING   4
 Return value of SIGNDOC_SignatureParameters_getType(): String. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_COLOR   5
 Return value of SIGNDOC_SignatureParameters_getType(): Color. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_BLOB   8
 Return value of SIGNDOC_SignatureParameters_getType(): Blob. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_LENGTH   9
 Return value of SIGNDOC_SignatureParameters_getType(): Length. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DEFAULT   0
 Signing methods: default method. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS1   1
 Signing methods: PKCS #1 (RSA keys only). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS7_DETACHED   2
 Signing methods: detached PKCS #7. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS7_SHA1   3
 Signing methods: PKCS #7 with SHA-1 (deprecated). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_HASH   4
 Signing methods: The signature is just a hash (TIFF only). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_CADES_DETACHED   5
 Signing methods: ETSI CAdES detached (PAdES-BES). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_CADES_RFC3161   6
 Signing methods: ETSI CAdES RFC 3161 time stamp. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_OPTIMIZE_OPTIMIZE   0
 Optimization of document before signing: Optimize document before signing for the first time. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_OPTIMIZE_DONT_OPTIMIZE   1
 Optimization of document before signing: Don't optimize document. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_OPTIMIZE_IF_POSSIBLE   2
 Optimization of document before signing: Optimize the document if possible. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE   0
 Fix appearance streams of check boxes and radio buttons for PDF/A-1 without Technical Corrigendum 2 before signing: Freeze (fix) appearances. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_DONT_FREEZE   1
 Fix appearance streams of check boxes and radio buttons for PDF/A-1 without Technical Corrigendum 2 before signing: Don't freeze (fix) appearances. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO   2
 Fix appearance streams of check boxes and radio buttons for PDF/A-1 without Technical Corrigendum 2 before signing: Freeze (fix) appearances if appropriate. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_RSA   0
 Select how to encrypt the biometric data: Random session key encrypted with public RSA key. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_FIXED   1
 Select how to encrypt the biometric data: Fixed key (no security). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_BINARY   2
 Select how to encrypt the biometric data: Binary 256-bit key. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_PASSPHRASE   3
 Select how to encrypt the biometric data: Passphrase that will be hashed to a 256-bit key. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_DONT_STORE   4
 Select how to encrypt the biometric data: The biometric data won't be stored in the document. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICHASHLOCATION_ATTR   0
 Select where to store the message digest computed over the document hash and the unencrypted biometric data: If possible, store the biometric hash as unauthenticated attribute in the PKCS #7 (or CMS) message. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICHASHLOCATION_CONTENTS   1
 Select where to store the message digest computed over the document hash and the unencrypted biometric data: Store the message digest in the Contents entry of the signature dictionary. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_LEFT   0
 Horizontal alignment: Align left. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_CENTER   1
 Horizontal alignment: Center. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_RIGHT   2
 Horizontal alignment: Align right. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_JUSTIFY   3
 Horizontal alignment: Justify (align both and right, expanding white space). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_AUTO   4
 Horizontal alignment: Align left if the text begins with an LTR run, align right if the text begins with an RTL run. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_DEFAULT   (-1)
 Horizontal alignment: Use integer parameter "TextHAlignment". More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_VALIGNMENT_TOP   0
 Vertical alignment: top. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_VALIGNMENT_CENTER   1
 Vertical alignment: center. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_VALIGNMENT_BOTTOM   2
 Vertical alignment: bottom. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_OVERLAY   0
 Position of the text block w.r.t. to the image: Text and image are independent and overlap (text painted on image). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_BELOW   1
 Position of the text block w.r.t. to the image: Text is put below the image. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_UNDERLAY   2
 Position of the text block w.r.t. to the image: Text and image are independent and overlap (image painted on text). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_RIGHT_OF   3
 Position of the text block w.r.t. to the image: Text is put on the right of the image. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_ABOVE   4
 Position of the text block w.r.t. to the image: Text is put above the image. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_LEFT_OF   5
 Position of the text block w.r.t. to the image: Text is put on the left of the image. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_VALUETYPE_ABS   0
 Indicate how measurements are specified: aValue is the value to be used (units of document coordinates). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_VALUETYPE_FIELD_HEIGHT   1
 Indicate how measurements are specified: Multiply aValue by the field height. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_VALUETYPE_FIELD_WIDTH   2
 Indicate how measurements are specified: Multiply aValue by the field width. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTGROUP_MASTER   0
 Text groups: Master group. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTGROUP_SLAVE   1
 Text groups: Slave group. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_LTR   0x1000
 Paragraph direction: LTR. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_RTL   0x2000
 Paragraph direction: RTL. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_DEFAULT_LTR   0x4000
 Paragraph direction: Choose direction automatically, default to LTR. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_DEFAULT_RTL   0x8000
 Paragraph direction: Choose direction automatically, default to RTL. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_IGNORESEEDVALUES_SUBFILTER   0x01
 Flag for ignoring mandatory requirements specified by the signature seed value dictionary: Ignore SubFilter (signing method). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_IGNORESEEDVALUES_DIGESTMETHOD   0x02
 Flag for ignoring mandatory requirements specified by the signature seed value dictionary: Ignore DigestMethod (hash algorithm). More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_SOFTWARE   0x01
 Flags for selecting certificates: include certificates with software-based private keys. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_HARDWARE   0x02
 Flags for selecting certificates: include certificates with hardware-based private keys. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_USE_CERTIFICATE_SEED_VALUES   0x10
 Flags for selecting certificates: include only certificates allowed by the PDF document's certificate seed value dictionary. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_ASK_IF_AMBIGUOUS   0x20
 Flags for selecting certificates: ask the user to select a certificate if there is more than one matching certificate. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK   0x40
 Flags for selecting certificates: never ask the user to select a certificate; exactly one certificate must match. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_CREATE_SELF_SIGNED   0x80
 Flags for selecting certificates: offer to create a self-signed certificate (cannot be used with SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK and SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_ASK_IF_AMBIGUOUS) More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_BW   0x01
 Flags for rendering the signature: black and white. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_GRAY   0x02
 Flags for rendering the signature: use gray levels computed from pressure. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_ANTIALIAS   0x04
 Flags for rendering the signature: use gray levels for antialiasing. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_LIMIT_SIZE   0x08
 Flags for rendering the signature: Limit the size of the rendered signature to the size of the captured signature. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_IMAGETRANSPARENCY_OPAQUE   0
 Transparency of signature image: Make signature image opaque. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_IMAGETRANSPARENCY_BRIGHTEST   1
 Transparency of signature image: Make the brightest color transparent. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_ALL   0
 Integer parameter AddCertificates: Include all intermediate certificates and the root certificate. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_NONE   1
 Integer parameter AddCertificates: Do not include any certificates. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_TRUSTED   2
 Integer parameter AddCertificates: Include all intermediate certificates and the root certificate, require the root certificate to be trusted. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_ADDREVOCATIONINFO_ADD   0x01
 Flag for integer parameter AddRevocationInfo: Add revocation data. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_REMOVEXFA_ALWAYS   0
 Value for integer parameter "RemoveXFA": Always remove XFA. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_REMOVEXFA_IF_ALLOWED   1
 Value for integer parameter "RemoveXFA": Remove XFA if possible. More...
 
#define SIGNDOC_SIGNATUREPARAMETERS_REMOVEXFA_NEVER   2
 Value for integer parameter "RemoveXFA": Do not remove XFA. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_DONT_VERIFY   0
 Value for integer parameter "CertificateChainVerificationPolicy": Don't verify the certificate chain. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED   1
 Value for integer parameter "CertificateChainVerificationPolicy": Accept self-signed certificates. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED_WITH_BIO   2
 Value for integer parameter "CertificateChainVerificationPolicy": Accept self-signed certificates if biometric data is present. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED_WITH_RSA_BIO   3
 Value for integer parameter "CertificateChainVerificationPolicy": Accept self-signed certificates if asymmetrically encrypted biometric data is present. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_REQUIRE_TRUSTED_ROOT   4
 Value for integer parameter "CertificateChainVerificationPolicy": Require a trusted root certificate. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_DONT_CHECK   0
 Values for integer parameter "CertificateRevocationVerificationPolicy": Don't verify revocation of certificates. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_OFFLINE   1
 Values for integer parameter "CertificateRevocationVerificationPolicy": Check revocation, assume that certificates are not revoked if the revocation server is offline. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_ONLINE   2
 Values for integer parameter "CertificateRevocationVerificationPolicy": Check revocation, assume that certificates are revoked if the revocation server is offline. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MINIMAL   0
 Value for integer parameter "VerificationModel": Minimal. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_CHAIN   1
 Value for integer parameter "VerificationModel": Chain model. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MODIFIED_SHELL   2
 Value for integer parameter "VerificationModel": Modified shell model (also known as hybrid model). More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_SHELL   3
 Value for integer parameter "VerificationModel": Shell model. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_CHECK_REVOCATION   0x01
 Flag for integer parameter "VerificationFlags": Check the revocation state of the certificates. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_USE_CRL_ONLY   0x02
 Flag for integer parameter "VerificationFlags": Use only certification revocation lists for checking the revocation state of the certificates. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_USE_OCSP_ONLY   0x04
 Flag for integer parameter "VerificationFlags": Use only OCSP for checking the revocation state of the certificates. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_OFFLINE   0x08
 Flag for integer parameter "VerificationFlags": Use only CRLs and OCSP responses stored in the document, do not connect to any server for getting CRLs and OCSP responses. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ENFORCE_NEXT_UPDATE   0x10
 Flag for integer parameter "VerificationFlags": Enforce nextUpdate of CRLs and OCSP responses. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ENFORCE_OCSP_SIGNER   0x20
 Flag for integer parameter "VerificationFlags": Enforce correct OCSP signer. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ONLINE   0x40
 Flag for integer parameter "VerificationFlags": Do not use CRLs and OCSP responses stored in the document, always use server for getting CRLs and OCSP responses. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_NO_OCSP_NONCE   0x80
 Flag for integer parameter "VerificationFlags": Do not use a nonce in OCSP requests. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_CRL_FIRST   0x100
 Flag for integer parameter "VerificationFlags": Try CRL before OCSP for certificates that specify both CRL distribution points and OCSP distribution points. More...
 
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_IGNORE_NO_REVOCATION   0x200
 Flag for integer parameter "VerificationFlags": Ignore for revocation checking certificates that don't have CRL and OCSP distribution points. More...
 
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_UNMODIFIED   0
 State of a signature: No error, signature and document verified. More...
 
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_DOCUMENT_EXTENDED   1
 State of a signature: No error, signature and document verified, document modified by adding data to the signed document. More...
 
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_DOCUMENT_MODIFIED   2
 State of a signature: Document modified (possibly forged). More...
 
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_UNSUPPORTED_SIGNATURE   3
 State of a signature: Unsupported signature method. More...
 
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_INVALID_CERTIFICATE   4
 State of a signature: Invalid certificate. More...
 
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_EMPTY   5
 State of a signature: Signature field without signature. More...
 
#define SIGNDOC_VERIFICATIONRESULT_MODIFICATIONSTATE_UNMODIFIED   0
 Modification state of the document for a certain signature: The document has not been modified since the signature was added. More...
 
#define SIGNDOC_VERIFICATIONRESULT_MODIFICATIONSTATE_ALLOWED   1
 Modification state of the document for a certain signature: All the modifications are allowed by the signature. More...
 
#define SIGNDOC_VERIFICATIONRESULT_MODIFICATIONSTATE_PROHIBITED   2
 Modification state of the document for a certain signature: There are modifications that are not allowed by the signature. More...
 
#define SIGNDOC_VERIFICATIONRESULT_TIMESTAMPSTATE_VALID   0
 State of the RFC 3161 time stamp: No error, an RFC 3161 time stamp is present and valid (but you have to check the certificate chain and revocation). More...
 
#define SIGNDOC_VERIFICATIONRESULT_TIMESTAMPSTATE_MISSING   1
 State of the RFC 3161 time stamp: There is no RFC 3161 time stamp. More...
 
#define SIGNDOC_VERIFICATIONRESULT_TIMESTAMPSTATE_INVALID   2
 State of the RFC 3161 time stamp: An RFC 3161 time stamp is present but invalid. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_OK   0
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Chain OK. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_BROKEN_CHAIN   1
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Chain broken. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_UNTRUSTED_ROOT   2
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Untrusted root certificate. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_CRITICAL_EXTENSION   3
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): A certificate has an unknown critical extension. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_NOT_TIME_VALID   4
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): A certificate is not yet valid or is expired. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_PATH_LENGTH   5
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Path length constraint not satisfied. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_INVALID   6
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Invalid certificate or chain. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_ERROR   7
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Other error. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_OK   0
 Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): No certificate revoked. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_NOT_CHECKED   1
 Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): Revocation not checked. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_OFFLINE   2
 Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): Revocation server is offline. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_REVOKED   3
 Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): At least one certificate has been revoked. More...
 
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_ERROR   4
 Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): Error. More...
 
#define SIGNDOC_WATERMARK_JUSTIFICATION_LEFT   0
 Justification of multi-line text: left. More...
 
#define SIGNDOC_WATERMARK_JUSTIFICATION_CENTER   1
 Justification of multi-line text: center. More...
 
#define SIGNDOC_WATERMARK_JUSTIFICATION_RIGHT   2
 Justification of multi-line text: right. More...
 
#define SIGNDOC_WATERMARK_LOCATION_OVERLAY   0
 Location of watermark: Watermark appears on top of page. More...
 
#define SIGNDOC_WATERMARK_LOCATION_UNDERLAY   1
 Location of watermark: Watermark appears behind page. More...
 
#define SIGNDOC_WATERMARK_HALIGNMENT_LEFT   0
 Horizontal alignment: Align left. More...
 
#define SIGNDOC_WATERMARK_HALIGNMENT_CENTER   1
 Horizontal alignment: Center. More...
 
#define SIGNDOC_WATERMARK_HALIGNMENT_RIGHT   2
 Horizontal alignment: Align right. More...
 
#define SIGNDOC_WATERMARK_VALIGNMENT_TOP   0
 Vertical alignment: Align top. More...
 
#define SIGNDOC_WATERMARK_VALIGNMENT_CENTER   1
 Vertical alignment: Center. More...
 
#define SIGNDOC_WATERMARK_VALIGNMENT_BOTTOM   2
 Vertical alignment: Align bottom. More...
 
#define SIGNDOC_WATERMARK_FLAGS_LTR   0x1000
 Flag for SIGNDOC_Watermark_setFlags(): Paragraph direction: LTR. More...
 
#define SIGNDOC_WATERMARK_FLAGS_RTL   0x2000
 Flag for SIGNDOC_Watermark_setFlags(): Paragraph direction: RTL. More...
 
#define SIGNDOC_WATERMARK_FLAGS_DEFAULT_LTR   0x4000
 Flag for SIGNDOC_Watermark_setFlags(): Choose direction automatically, default to LTR. More...
 
#define SIGNDOC_WATERMARK_FLAGS_DEFAULT_RTL   0x8000
 Flag for SIGNDOC_Watermark_setFlags(): Choose direction automatically, default to RTL. More...
 
#define SIGNDOC_ENCODING_NATIVE   0
 Encoding of strings: Windows "ANSI" for Windows, LC_CTYPE for Linux, file system representation for iOS. More...
 
#define SIGNDOC_ENCODING_UTF_8   1
 Encoding of strings: UTF-8. More...
 
#define SIGNDOC_ENCODING_LATIN_1   2
 Encoding of strings: ISO 8859-1. More...
 
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_OK   0
 Return value of SIGNDOC_TimeStamper_stamp(): Success. More...
 
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_INVALID_INPUT   1
 Return value of SIGNDOC_TimeStamper_stamp(): Invalid argument or invalid time-stamp request. More...
 
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_TIMEOUT   2
 Return value of SIGNDOC_TimeStamper_stamp(): Timeout. More...
 
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_STOPPED   3
 Return value of SIGNDOC_TimeStamper_stamp(): Transaction interrupted by SIGNDOC_TimeStamper_stop(). More...
 
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_TCP_ERROR   4
 Return value of SIGNDOC_TimeStamper_stamp(): Some failure at the TCP/IP layer. More...
 
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_SSL_ERROR   5
 Return value of SIGNDOC_TimeStamper_stamp(): Some failure at the SSL/TLS layer. More...
 
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_HTTP_ERROR   6
 Return value of SIGNDOC_TimeStamper_stamp(): Some failure at the HTTP layer. More...
 
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_SERVER_ERROR   7
 Return value of SIGNDOC_TimeStamper_stamp(): The server failed to create the time stamp (according to PKIStatus). More...
 
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_INVALID_RESPONSE   8
 Return value of SIGNDOC_TimeStamper_stamp(): The response from the server is invalid. More...
 
#define SIGNDOC_TIMESTAMPER_STAMPFLAGS_DONT_CHECK_REVOCATION   0x01
 Flag for SIGNDOC_TimeStamper_stamp(): Do not check revocation. More...
 
#define SIGNDOC_TIMESTAMPER_STAMPFLAGS_DONT_HASH   0x02
 Flag for SIGNDOC_TimeStamper_stamp(): Do not hash the document message digest again. More...
 
#define SIGNDOC_FINDTEXTOCCURRENCE_GETBOUNDINGBOXESFLAGS_SINGLE   0x01
 Flag for SIGNDOC_FindTextOccurrence_getBoundingBoxes(): Compute a single bounding box, viz, the smallest rectangle containing all the glyph bounding boxes. More...
 
#define SIGNDOC_FINDTEXTOCCURRENCE_GETBOUNDINGBOXESFLAGS_INDIVIDUAL   0x02
 Flag for SIGNDOC_FindTextOccurrence_getBoundingBoxes(): Return one bounding box per glyph. More...
 
#define SIGNDOC_FINDTEXTOCCURRENCE_GETBOUNDINGBOXESFLAGS_LOGICAL   0x04
 Flag for SIGNDOC_FindTextOccurrence_getBoundingBoxes(): Compute logical bounding boxes. More...
 
#define SIGNDOC_COLOR_TYPE_GRAY   0
 Color type: Gray scale. More...
 
#define SIGNDOC_COLOR_TYPE_RGB   1
 Color type: RGB color. More...
 
#define SIGNDOC_CHANGE_TYPE_OTHER   0
 Type of change: Other change. More...
 
#define SIGNDOC_CHANGE_TYPE_FIELD_ADDED   1
 Type of change: A field has been added. More...
 
#define SIGNDOC_CHANGE_TYPE_FIELD_REMOVED   2
 Type of change: A field has been removed. More...
 
#define SIGNDOC_CHANGE_TYPE_FIELD_MODIFIED   3
 Type of change: Properties of a field have been modified. More...
 
#define SIGNDOC_CHANGE_TYPE_FIELD_FILLED_IN   4
 Type of change: The value of a field has been changed. More...
 
#define SIGNDOC_CHANGE_TYPE_ANNOTATION_ADDED   5
 Type of change: An annotation has been added. More...
 
#define SIGNDOC_CHANGE_TYPE_ANNOTATION_REMOVED   6
 Type of change: An annotation has been removed. More...
 
#define SIGNDOC_CHANGE_TYPE_ANNOTATION_MODIFIED   7
 Type of change: An annotation has been modified. More...
 
#define SIGNDOC_CHANGE_TYPE_ATTACHMENT_ADDED   8
 Type of change: An attachment has been added. More...
 
#define SIGNDOC_CHANGE_TYPE_ATTACHMENT_REMOVED   9
 Type of change: An attachment has been removed. More...
 
#define SIGNDOC_CHANGE_TYPE_ATTACHMENT_MODIFIED   10
 Type of change: An attachment has been modified. More...
 
#define SIGNDOC_CHANGE_TYPE_PAGE_ADDED   11
 Type of change: A page has been added. More...
 
#define SIGNDOC_CHANGE_TYPE_PAGE_REMOVED   12
 Type of change: A page has been removed. More...
 
#define SIGNDOC_CHANGE_TYPE_PAGE_MODIFIED   13
 Type of change: A page has been modified. More...
 
#define SIGNDOC_CHECKSIGNATUREPARAMETERS_TYPE_UNDEFINED   0
 Return value of SIGNDOC_CheckSignatureParameters_getType(): The specified parameter is not defined. More...
 
#define SIGNDOC_CHECKSIGNATUREPARAMETERS_TYPE_BOOLEAN   1
 Return value of SIGNDOC_CheckSignatureParameters_getType(): Boolean. More...
 
#define SIGNDOC_CHECKSIGNATUREPARAMETERS_TYPE_INTEGER   2
 Return value of SIGNDOC_CheckSignatureParameters_getType(): Integer. More...
 
#define SIGNDOC_CLEANPARAMETERS_TYPE_UNDEFINED   0
 Return value of SIGNDOC_CleanParameters_getType() and SIGNDOC_CleanParameters_getTypeAt(): The specified action is not defined. More...
 
#define SIGNDOC_CLEANPARAMETERS_TYPE_BOOLEAN   1
 Return value of SIGNDOC_CleanParameters_getType() and SIGNDOC_CleanParameters_getTypeAt(): Boolean. More...
 
#define SIGNDOC_CLEANPARAMETERS_TYPE_INTEGER   2
 Return value of SIGNDOC_CleanParameters_getType() and SIGNDOC_CleanParameters_getTypeAt(): Integer. More...
 
#define SIGNDOC_CLEANPARAMETERS_TYPE_NUMBER   3
 Return value of SIGNDOC_CleanParameters_getType() and SIGNDOC_CleanParameters_getTypeAt(): Floating-point number. More...
 
#define SIGNDOC_CLEANPARAMETERS_TYPE_VOID   7
 Return value of SIGNDOC_CleanParameters_getType() and SIGNDOC_CleanParameters_getTypeAt(): Void (no value). More...
 
#define SIGNDOC_IMAGEPARAMETERS_TYPE_UNDEFINED   0
 Return value of SIGNDOC_ImageParameters_getType(): The specified parameter is not defined. More...
 
#define SIGNDOC_IMAGEPARAMETERS_TYPE_BOOLEAN   1
 Return value of SIGNDOC_ImageParameters_getType(): Boolean. More...
 
#define SIGNDOC_IMAGEPARAMETERS_TYPE_INTEGER   2
 Return value of SIGNDOC_ImageParameters_getType(): Integer. More...
 
#define SIGNDOC_IMAGEPARAMETERS_TYPE_NUMBER   3
 Return value of SIGNDOC_ImageParameters_getType(): Floating-point number. More...
 
#define SIGNDOC_IMAGEPARAMETERS_TYPE_STRING   4
 Return value of SIGNDOC_ImageParameters_getType(): String. More...
 
#define SIGNDOC_IMAGEPARAMETERS_TYPE_COLOR   5
 Return value of SIGNDOC_ImageParameters_getType(): Color. More...
 
#define SIGNDOC_MATCHPARAMETERS_TYPE_UNDEFINED   0
 Return value of SIGNDOC_MatchParameters_getType(): The specified parameter is not defined. More...
 
#define SIGNDOC_MATCHPARAMETERS_TYPE_BOOLEAN   1
 Return value of SIGNDOC_MatchParameters_getType(): Boolean. More...
 
#define SIGNDOC_MATCHPARAMETERS_TYPE_INTEGER   2
 Return value of SIGNDOC_MatchParameters_getType(): Integer. More...
 
#define SIGNDOC_MATCHPARAMETERS_FLAGS_ENGINE_AUTO   0x0001
 Flag for integer parameter "Flags": use all matching engines suitable for the data at hand. More...
 
#define SIGNDOC_MATCHPARAMETERS_FLAGS_ENGINE_STATIC   0x0002
 Flag for integer parameter "Flags": enable static matching (SIVAL engine). More...
 
#define SIGNDOC_MATCHPARAMETERS_FLAGS_ENGINE_DYNAMIC   0x0004
 Flag for integer parameter "Flags": enable dynamic matching (ADSV engine). More...
 
#define SIGNDOC_MATCHPARAMETERS_FLAGS_ENGINE_DSTAT   0x0008
 Flag for integer parameter "Flags": enable statistic matching (DStat engine). More...
 
#define SIGNDOC_MATCHPARAMETERS_FLAGS_NORMALIZE_SAMPLE_RATES   0x0100
 Flag for integer parameter "Flags": normalize the sample rates of signatures and references for dynamic matching. More...
 
#define SIGNDOC_MATCHPARAMETERS_FLAGS_MIRROR   0x0200
 Flag for integer parameter "Flags": mirror rendered signature and reference images for static matching. More...
 
#define SIGNDOC_MATCHPARAMETERS_FLAGS_KEEP_RESOLUTION   0x0400
 Flag for integer parameter "Flags": do not scale signatures. More...
 
#define SIGNDOC_SIGNATUREDATA_TYPE_EMPTY   0
 Return value for SIGNDOC_SignatureData_getType(): empty. More...
 
#define SIGNDOC_SIGNATUREDATA_TYPE_SIGNATURE   1
 Return value for SIGNDOC_SignatureData_getType(): signature. More...
 
#define SIGNDOC_SIGNATUREDATA_TYPE_REFERENCE   2
 Return value for SIGNDOC_SignatureData_getType(): reference. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_SINGLE   0x000000ff
 Mask for blob format: formats specified by a single value. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_WRAPPER   0x00000f00
 Mask for blob format: CBEFF wrapper. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_BDB   0x0000f000
 Mask for blob format: BDB format. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_DATA   0x000f0000
 Mask for blob format: data format. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_FLAGS   0xfff00000
 Mask for blob format: flags. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_SOFTPRO   4
 Blob format: SOFTPRO Flatfile format for dynamic signatures and references. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_NONE   0x00000000
 Blob format: No ISO/IEC 19785-3:2015 (CBEFF) wrapper. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT2   0x00000200
 Blob format: Use ISO/IEC 19785-3:2015 patron format type 2 ("minimum simple byte-oriented patron format") CBEFF wrapper. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT3   0x00000300
 Blob format: Use ISO/IEC 19785-3:2015 patron format type 3 ("maximum simple patron format (byte oriented) using presence bitmap") CBEFF wrapper. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT6   0x00000600
 Blob format: Use ISO/IEC 19785-3:2015 patron format type 6 ("complex patron format") CBEFF wrapper. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2007TC1   0x00001000
 Blob format: ISO/IEC 19794-7:2007 (with Technical Corrigendum 1) Biometric Data Block (version 1). More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014   0x00002000
 Blob format: ISO/IEC 19794-7:2014 Biometric Data Block (version 2). More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_FULL   0x00000000
 Blob format: ISO/IEC 19794-7 full format. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_METERS   0x00100000
 Blob format flag: Use meters rather than millimeters for X and Y coordinates. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_FIX   0x00200000
 Blob format flag: do not attempt to automatically fix ISO-format signatures that have been written by SignWare before version 3.2.9.0. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_COMPAT1   0x00400000
 Blob format flag: write with bug compatibility with SignWare before version 3.2.9.0. More...
 
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_EXT_DATA   0x00800000
 Blob format flag: Omit or ignore extended data. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_UNKNOWN   0
 Capture device identifier: Unknown capture device. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_INTUOS   1
 Capture device identifier: Wacom Intuos. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_MOBINETIX   2
 Capture device identifier: MobiNetix. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_GRAPHIRE   3
 Capture device identifier: Wacom Graphire. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_BS_HESY   4
 Capture device identifier: BS Hesy. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_PL400   5
 Capture device identifier: Wacmo PL400. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EPOS   6
 Capture device identifier: Interlink ePAD Point of Sales. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_ESIG   7
 Capture device identifier: Interlink ePad E-Signature. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EINK   8
 Capture device identifier: Interlink ePad-Ink E-Signature. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_PENPARTNER   9
 Capture device identifier: Wacom PenPartner. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_TABLETPC   10
 Capture device identifier: Tablet PC. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_STEPOVER   11
 Capture device identifier: StepOver. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EID   12
 Capture device identifier: Interlink Epad-ID. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_MTLDC   13
 Capture device identifier: MotionTouch LegaPad LCD. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_MTLPD   14
 Capture device identifier: MotionTouch LegaPad. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EPAD2   15
 Capture device identifier: Interlink ePad II. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_BLUEM   16
 Capture device identifier: Stepover blueM II. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_BLUEMLCD   17
 Capture device identifier: Stepover blueM II with LCD. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_TZSE   18
 Capture device identifier: Topaz tablet with LCD (and pressure). More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EPADLS   19
 Capture device identifier: Interlink EPad-LS. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EINK2   20
 Capture device identifier: Interlink EPad-Ink Pro. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EID2   21
 Capture device identifier: Interlink EPad-ID Pro. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_SIGNPAD   22
 Capture device identifier: Wacom SignPad. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_BAMBOO   23
 Capture device identifier: Wacom Bamboo. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_VERIFONE_MX   24
 Capture device identifier: Verifone MX 800 series. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_INGENICO_SC350   25
 Capture device identifier: Ingenico iSC350. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_IPAD   501
 Capture device identifier: Apple iPad. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_IPHONE   502
 Capture device identifier: Apple iPhone. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_IPOD   503
 Capture device identifier: Apple iPod. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_OLIVETTI_ZPAD_B8001   510
 Capture device identifier: Olivetti Graphos zPad-B8001. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_SAMSUNG_GT_N7000   511
 Capture device identifier: Samsung GT-N7000. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_HTC_P510E   512
 Capture device identifier: HTC Flyer P510e. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_ANDROID_TOUCH   513
 Capture device identifier: mobilephone touch. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_HTML5_CAPTURE   514
 Capture device identifier: HTML5 capture client. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_OLIVETTI_GRAPHOS_A10   515
 Capture device identifier: Olivetti Graphos A10. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_ENSIGN10   1000
 Capture device identifier: Euronovate ENSign10. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_VPSIGN   1001
 Capture device identifier: VPSign. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_USER_FIRST   10000
 Capture device identifier: First user-defined device identifier. More...
 
#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_USER_LAST   10999
 Capture device identifier: Last user-defined device identifier. More...
 

Typedefs

typedef int SIGNDOC_Boolean
 Type for boolean values. More...
 
typedef void(* SIGNDOC_UserInputStream_close) (struct SIGNDOC_Exception **aEx, void *aClosure)
 SIGNDOC_UserInputStream callback implementing close(). More...
 
typedef int(* SIGNDOC_UserInputStream_read) (struct SIGNDOC_Exception **aEx, void *aClosure, void *aDst, int aLen)
 SIGNDOC_UserInputStream callback implementing read(). More...
 
typedef void(* SIGNDOC_UserInputStream_seek) (struct SIGNDOC_Exception **aEx, void *aClosure, int aPos)
 SIGNDOC_UserInputStream callback implementing seek(). More...
 
typedef int(* SIGNDOC_UserInputStream_tell) (struct SIGNDOC_Exception **aEx, const void *aClosure)
 SIGNDOC_UserInputStream callback implementing tell(). More...
 
typedef int(* SIGNDOC_UserInputStream_getAvailable) (struct SIGNDOC_Exception **aEx, void *aClosure)
 SIGNDOC_UserInputStream callback implementing getAvailable(). More...
 
typedef void(* SIGNDOC_UserOutputStream_close) (struct SIGNDOC_Exception **aEx, void *aClosure)
 SIGNDOC_UserOutputStream callback implementing close(). More...
 
typedef void(* SIGNDOC_UserOutputStream_flush) (struct SIGNDOC_Exception **aEx, void *aClosure)
 SIGNDOC_UserOutputStream callback implementing flush(). More...
 
typedef void(* SIGNDOC_UserOutputStream_write) (struct SIGNDOC_Exception **aEx, void *aClosure, const void *aSrc, int aLen)
 SIGNDOC_UserOutputStream callback implementing write(). More...
 
typedef void(* SIGNDOC_UserOutputStream_seek) (struct SIGNDOC_Exception **aEx, void *aClosure, int aPos)
 SIGNDOC_UserOutputStream callback implementing seek(). More...
 
typedef int(* SIGNDOC_UserOutputStream_tell) (struct SIGNDOC_Exception **aEx, const void *aClosure)
 SIGNDOC_UserOutputStream callback implementing tell(). More...
 

Functions

int SIGNDOC_Source_fetch (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Source *aObj, const void **aPtr, int aMaxSize)
 Fetch data from a SIGNDOC_Source. More...
 
void SIGNDOC_free (void *aPtr)
 Free a block of memory. More...
 
void * SIGNDOC_alloc (struct SIGNDOC_Exception **aEx, size_t aSize)
 Allocate a block of memory. More...
 
char * SIGNDOC_strdup (struct SIGNDOC_Exception **aEx, const char *aStr)
 Allocate a block of memory initialized with a null-terminated string. More...
 
char * SIGNDOC_recodeStringStrict (struct SIGNDOC_Exception **aEx, int aInputEncoding, const char *aInput, int aOutputEncoding)
 Convert a string from one encoding to another encoding. More...
 
char * SIGNDOC_recodeStringRelaxed (struct SIGNDOC_Exception **aEx, int aInputEncoding, const char *aInput, int aOutputEncoding)
 Convert a string from one encoding to another encoding. More...
 
void SIGNDOC_logLine (int aLevel, const char *aLine)
 Log a line. More...
 
void SIGNDOC_Document_splitEscapeSequences (struct SIGNDOC_Exception **aEx, const char *aInput, struct SIGNDOC_StringArray *aOutput)
 Split a string obtained from a PDF text string into escape sequences and text segments. More...
 
char * SIGNDOC_Document_withoutEscapeSequences (struct SIGNDOC_Exception **aEx, const char *aInput)
 Remove escape sequences specifying the natural language in text strings. More...
 
char * SIGNDOC_Document_withEscapeSequence (struct SIGNDOC_Exception **aEx, const char *aText, const char *aLang)
 Prepend an escape sequence for specifying the natural language in a text string. More...
 
void SIGNDOC_FindTextOccurrence_getBoundingBoxes (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_FindTextOccurrence *aObj, int aPage, unsigned aFlags, struct SIGNDOC_RectArray *aOutput)
 Get bounding boxes for the glyphs of a SIGNDOC_FindTextOccurrence object. More...
 
SIGNDOC_Boolean SIGNDOC_Signature_getChange (struct SIGNDOC_Exception **aEx, const struct SIGNDOC_Signature *aObj, int aIndex, struct SIGNDOC_Change **aOutput)
 Get a SIGNDOC_Change object for a change. More...
 
void SIGNDOC_SignatureData_setErrorMessage (struct SIGNDOC_Exception **aEx, struct SIGNDOC_SignatureData *aObj, int aEncoding, const char *aMessage)
 Set the error message. More...
 

Detailed Description

SignDoc SDK C API.

Macro Definition Documentation

#define SDCAPI
#define SIGNDOC_ANNOTATION_FLAGS_AUTO_ALIGNMENT   0x200

Flag for SIGNDOC_Annotation_setFlags(): Align left if the text begins with an LTR run, align right if the text begins with an RTL run.

This flag overrides for creating the appearance stream SIGNDOC_ANNOTATION_HALIGNMENT_LEFT and SIGNDOC_ANNOTATION_HALIGNMENT_RIGHT passed to aHAlignment of SIGNDOC_Annotation_setPlainText(). This flag is ignored for SIGNDOC_ANNOTATION_HALIGNMENT_CENTER.

See also
SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR, SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL, SIGNDOC_ANNOTATION_FLAGS_LTR, SIGNDOC_ANNOTATION_FLAGS_RTL
#define SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR   0x4000

Flag for SIGNDOC_Annotation_setFlags(): Choose direction automatically, default to LTR.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 0 (LTR) for paragraphs having no strong directional character.

If none of SIGNDOC_ANNOTATION_FLAGS_LTR, SIGNDOC_ANNOTATION_FLAGS_RTL, SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR, and SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL is set, SIGNDOC_ANNOTATION_FLAGS_LTR will be used.

At most one of SIGNDOC_ANNOTATION_FLAGS_LTR, SIGNDOC_ANNOTATION_FLAGS_RTL, SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR, and SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL can be set.

Usage of SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR is not recommended as the visual representation of the text of the annotation may not match the value of the annotation (as interpreted by software which does not know that the paragraph direction is supposed to be default-LTR). Use SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR only as last resort if you cannot modify the text received from a default-LTR input field appropriately for paragraph direction LTR used in PDF annotations.

See also
SIGNDOC_ANNOTATION_FLAGS_AUTO_ALIGNMENT
#define SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL   0x8000

Flag for SIGNDOC_Annotation_setFlags(): Choose direction automatically, default to RTL.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 1 (RTL) for paragraphs having no strong directional character.

If none of SIGNDOC_ANNOTATION_FLAGS_LTR, SIGNDOC_ANNOTATION_FLAGS_RTL, SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR, and SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL is set, SIGNDOC_ANNOTATION_FLAGS_LTR will be used.

At most one of SIGNDOC_ANNOTATION_FLAGS_LTR, SIGNDOC_ANNOTATION_FLAGS_RTL, SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR, and SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL can be set.

Usage of SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL is not recommended as the visual representation of the text of the annotation may not match the value of the annotation (as interpreted by software which does not know that the paragraph direction is supposed to be default-RTL). Use SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL only as last resort if you cannot modify the text received from a default-RTL input field appropriately for paragraph direction LTR used in PDF annotations.

See also
SIGNDOC_ANNOTATION_FLAGS_AUTO_ALIGNMENT
#define SIGNDOC_ANNOTATION_FLAGS_RTL   0x2000

Flag for SIGNDOC_Annotation_setFlags(): Paragraph direction: RTL.

If none of SIGNDOC_ANNOTATION_FLAGS_LTR, SIGNDOC_ANNOTATION_FLAGS_RTL, SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR, and SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL is set, SIGNDOC_ANNOTATION_FLAGS_LTR will be used.

At most one of SIGNDOC_ANNOTATION_FLAGS_LTR, SIGNDOC_ANNOTATION_FLAGS_RTL, SIGNDOC_ANNOTATION_FLAGS_DEFAULT_LTR, and SIGNDOC_ANNOTATION_FLAGS_DEFAULT_RTL can be set.

Usage of SIGNDOC_ANNOTATION_FLAGS_RTL is not recommended as the visual representation of the text of the annotation may not match the plain text of the annotation (as interpreted by software which does not know that the paragraph direction is supposed to be RTL). Use SIGNDOC_ANNOTATION_FLAGS_RTL only as last resort if you cannot modify the text received from an RTL input field appropriately for paragraph direction LTR used in PDF annotations.

See also
SIGNDOC_ANNOTATION_FLAGS_AUTO_ALIGNMENT
#define SIGNDOC_ANNOTATION_HALIGNMENT_CENTER   1

Horizontal alignment: Center.

Used for integer parameters "ImageVAlignment" and "TextVAlignment", see SIGNDOC_SignatureParameters_setInteger().

#define SIGNDOC_ANNOTATION_HALIGNMENT_LEFT   0

Horizontal alignment: Align left.

Used for integer parameters "ImageVAlignment" and "TextVAlignment", see SIGNDOC_SignatureParameters_setInteger().

#define SIGNDOC_ANNOTATION_HALIGNMENT_RIGHT   2

Horizontal alignment: Align right.

Used for integer parameters "ImageVAlignment" and "TextVAlignment", see SIGNDOC_SignatureParameters_setInteger().

#define SIGNDOC_ANNOTATION_LINEENDING_ARROW   2

Line ending style: Two short lines forming an arrowhead.

#define SIGNDOC_ANNOTATION_LINEENDING_NONE   1

Line ending style: No line ending.

#define SIGNDOC_ANNOTATION_LINEENDING_UNKNOWN   0

Line ending style: Unknown line ending style.

#define SIGNDOC_ANNOTATION_TYPE_FREETEXT   3

Annotation type: FreeText annotation.

Most annotation types are supported for PDF documents only.

#define SIGNDOC_ANNOTATION_TYPE_LINE   1

Annotation type: Line annotation.

Most annotation types are supported for PDF documents only.

#define SIGNDOC_ANNOTATION_TYPE_SCRIBBLE   2

Annotation type: Scribble annotation (freehand scribble).

Most annotation types are supported for PDF documents only.

#define SIGNDOC_ANNOTATION_TYPE_UNKNOWN   0

Annotation type: Unknown annotation type.

Most annotation types are supported for PDF documents only.

#define SIGNDOC_CHANGE_TYPE_ANNOTATION_ADDED   5

Type of change: An annotation has been added.

This does not include widget annotations. SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the annotation. SIGNDOC_Change_getPage() returns the page having the annotation, SIGNDOC_Change_getAnnotationType() returns the type of the annotation.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_ANNOTATION_MODIFIED   7

Type of change: An annotation has been modified.

This does not include widget annotations. SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the annotation. SIGNDOC_Change_getPage() returns the page having the annotation, SIGNDOC_Change_getAnnotationType() returns the type of the annotation.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_ANNOTATION_REMOVED   6

Type of change: An annotation has been removed.

This does not include widget annotations. SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the annotation. SIGNDOC_Change_getPage() returns the page which had the annotation, SIGNDOC_Change_getAnnotationType() returns the type of the annotation.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_ATTACHMENT_ADDED   8

Type of change: An attachment has been added.

SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the attachment.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_ATTACHMENT_MODIFIED   10

Type of change: An attachment has been modified.

SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the attachment.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_ATTACHMENT_REMOVED   9

Type of change: An attachment has been removed.

SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the attachment.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_FIELD_ADDED   1

Type of change: A field has been added.

SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the field, SIGNDOC_Change_getPage() returns the lowest page number containing a widget of the field, SIGNDOC_Change_getFieldType() returns the type of the field.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_FIELD_FILLED_IN   4

Type of change: The value of a field has been changed.

SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the field, SIGNDOC_Change_getPage() returns the first page having a widget of the field, SIGNDOC_Change_getFieldType() returns the type of the field.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_FIELD_MODIFIED   3

Type of change: Properties of a field have been modified.

SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the field, SIGNDOC_Change_getPage() returns the first page having a widget of the field, SIGNDOC_Change_getFieldType() returns the type of the field.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_FIELD_REMOVED   2

Type of change: A field has been removed.

SIGNDOC_Change_getName() and SIGNDOC_Change_getNameUTF8() return the name of the field, SIGNDOC_Change_getPage() returns the first page which had a widget of the field, SIGNDOC_Change_getFieldType() returns the type of the field.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_OTHER   0

Type of change: Other change.

There will be one change of this type if there are any changes to the document which do not fit into the other categories.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_PAGE_ADDED   11

Type of change: A page has been added.

SIGNDOC_Change_getPage() returns the number of the page in the newer version of the document.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_PAGE_MODIFIED   13

Type of change: A page has been modified.

SIGNDOC_Change_getPage() returns the number of the page.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHANGE_TYPE_PAGE_REMOVED   12

Type of change: A page has been removed.

SIGNDOC_Change_getPage() returns the number of the page in the older version of the document.

See also
SIGNDOC_Change_getType()
#define SIGNDOC_CHECKSIGNATUREPARAMETERS_TYPE_BOOLEAN   1

Return value of SIGNDOC_CheckSignatureParameters_getType(): Boolean.

#define SIGNDOC_CHECKSIGNATUREPARAMETERS_TYPE_INTEGER   2

Return value of SIGNDOC_CheckSignatureParameters_getType(): Integer.

#define SIGNDOC_CHECKSIGNATUREPARAMETERS_TYPE_UNDEFINED   0

Return value of SIGNDOC_CheckSignatureParameters_getType(): The specified parameter is not defined.

#define SIGNDOC_CLEANPARAMETERS_TYPE_BOOLEAN   1
#define SIGNDOC_CLEANPARAMETERS_TYPE_INTEGER   2

Return value of SIGNDOC_CleanParameters_getType() and SIGNDOC_CleanParameters_getTypeAt(): Integer.

See also
SIGNDOC_CleanParameters_addinteger()
#define SIGNDOC_CLEANPARAMETERS_TYPE_NUMBER   3
#define SIGNDOC_CLEANPARAMETERS_TYPE_UNDEFINED   0

Return value of SIGNDOC_CleanParameters_getType() and SIGNDOC_CleanParameters_getTypeAt(): The specified action is not defined.

#define SIGNDOC_CLEANPARAMETERS_TYPE_VOID   7
#define SIGNDOC_COLOR_TYPE_GRAY   0

Color type: Gray scale.

#define SIGNDOC_COLOR_TYPE_RGB   1

Color type: RGB color.

#define SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_COMPAT   0x01

Flag for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Behave like SIGNDOC_Document_addTextRect() of SignDoc SDK 4.2.0.8 and earlier.

If this flag is set, any sequence of CR and LF characters in the text starts a new paragraph (ie, text following such a sequence will be placed at the beginning of the next output line). In consequence, empty lines in the input do not produce empty lines in the output. To get an empty line in the output, you have to add a paragraph containing a non-breaking space (U+00A0) only:

1 "Line before empty line\n\xa0\nLine after empty line"

Moreover, lines can be broken only at a space character (U+0020).

If this flag is not set, the rules of UAX #14 will be used. In particular, CR, LF, and CR LF start a new paragraph and lines can be broken after punctuation.

#define SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_LTR   0x4000

Flag for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Choose direction automatically, default to LTR.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 0 (LTR) for paragraphs having no strong directional character.

If none of SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_LTR, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_RTL, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_RTL is set, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_LTR will be used.

At most one of SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_LTR, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_RTL, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_RTL can be set.

This flag will be ignored if SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_COMPAT is set.

#define SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_RTL   0x8000

Flag for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Choose direction automatically, default to RTL.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 1 (RTL) for paragraphs having no strong directional character.

If none of SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_LTR, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_RTL, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_RTL is set, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_LTR will be used.

At most one of SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_LTR, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_RTL, SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_DEFAULT_RTL can be set.

This flag will be ignored if SIGNDOC_DOCUMENT_ADDTEXTRECTFLAGS_COMPAT is set.

#define SIGNDOC_DOCUMENT_CHECKATTACHMENTRESULT_MATCH   0

Result of SIGNDOC_Document_checkAttachment(): The attachment matches its checksum.

#define SIGNDOC_DOCUMENT_CHECKATTACHMENTRESULT_MISMATCH   2

Result of SIGNDOC_Document_checkAttachment(): The attachment does not match its checksum.

#define SIGNDOC_DOCUMENT_CHECKATTACHMENTRESULT_NO_CHECKSUM   1

Result of SIGNDOC_Document_checkAttachment(): The attachment does not have a checksum.

#define SIGNDOC_DOCUMENT_COPYTOSTREAMFLAGS_UNSAVED   0x01
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_FDF   4

Document type: FDF document.

#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_OTHER   3

Document type: Other document.

#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_PDF   1

Document type: PDF document.

#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_TIFF   2

Document type: TIFF document.

#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_UNKNOWN   0
#define SIGNDOC_DOCUMENT_EXPORTFLAGS_TOP   0x01

Flags modifying the behavior of SIGNDOC_Document_exportFields(), SIGNDOC_Document_exportFieldsToMemory(), SIGNDOC_Document_exportProperties(), and SIGNDOC_Document_exportPropertiesToMemory(): Include XML declaration and schema for top-level element.

#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_HSPACE   0x0001

Flags modifying the behavior of SIGNDOC_Document_findText(): Ignore horizontal whitespace (may be required).

If this flag is set, horizontal whitespace will be removed from the stream of characters read from the document (but not from the text being sought).

The following characters will be ignored:

  • U+0009 (CHARACTER TABULATION)
  • U+0020 (SPACE)
  • U+00A0 (NO-BREAK SPACE)
  • U+1361 (ETHIOPIC WORDSPACE)
  • U+1680 (OGHAM SPACE MARK)
  • U+2000 (EN QUAD)
  • U+2001 (EM QUAD)
  • U+2002 (EN SPACE)
  • U+2003 (EM SPACE)
  • U+2004 (THREE-PER-EM SPACE)
  • U+2005 (FOUR-PER-EM SPACE)
  • U+2006 (SIX-PER-EM SPACE)
  • U+2007 (FIGURE SPACE)
  • U+200B (PUNCTUATION SPACE)
  • U+2009 (THIN SPACE)
  • U+200A (HAIR SPACE)
  • U+200B (ZERO WIDTH SPACE)
  • U+200C (ZERO WIDTH NON-JOINER)
  • U+200D (ZERO WIDTH JOINER)
  • U+202F (NARROW NO-BREAK SPACE)
  • U+205F (MEDIUM MATHEMATICAL SPACE)
  • U+2060 (WORD JOINER)
  • U+3000 (IDEAGRAPHIC SPACE)
  • U+303F (IDEOGRAPHIC HALF FILL SPACE)
  • U+FEFF (ZERO WIDTH NO-BREAK SPACE)
#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_HYPHENATION   0x0002

Flags modifying the behavior of SIGNDOC_Document_findText(): Ignore hyphenation.

If this flag is set, hyphen characters will be removed from the stream of characters read from the document (but not from the text being sought).

The following characters will be ignored:

  • U+002D (HYPHEN-MINUS)
  • U+00AD (SOFT HYPHEN)
  • U+058A (ARMENIAN HYPHEN)
  • U+1400 (CANADIAN SYLLABICS HYPHEN)
  • U+1806 (MONGOLIAN TODO SOFT HYPHEN)
  • U+1860 (BALINESE PAMENENG)
  • U+2010 (HYPHEN)
  • U+2011 (NON-BREAKING HYPHEN)
  • U+2012 (FIGURE-DASH)
  • U+2013 (EN-DASH)
  • U+2014 (EM-DASH)
  • U+2015 (HORIZONTAL BAR)
  • U+2027 (HYPHENATION POINT)
  • U+2043 (HYPHEN BULLET)
  • U+2212 (MINUS SIGN)
  • U+2796 (HEAVY MINUS SIGN)
  • U+2E17 (DOUBLE OBLIQUE HYPHEN)
  • U+2E40 (DOUBLE HYPHEN)
  • U+30A0 (KATAKANA-HIRAGANA DOUBLE HYPHEN)
  • U+FE63 (SMALL HYPHEN-MINUS)
  • U+FF0D (FULLWIDTH HYPHEN-MINUS)
  • U+10191 (ROMAN UNICA SIGN)
#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_SEQUENCE   0x0004

Flags modifying the behavior of SIGNDOC_Document_findText(): Use character positions instead of searching the characters in the document in the sequence they are encountered.

This can be expensive. This flag is not yet implemented.

#define SIGNDOC_DOCUMENT_FLAGS_AMBIGUOUS_BUTTON_VALUE_EMPTY   0x02

Flag for SIGNDOC_Document_setFlags(): Make SIGNDOC_Document_exportFields(), SIGNDOC_Document_exportFieldsToMemory(), SIGNDOC_Document_getField(), SIGNDOC_Document_getFields(), and SIGNDOC_Document_getFieldsOfPage() return an empty button value if there are multiple non-Off values for a check box field.

An empty button value will make SIGNDOC_Document_setField() fail. Set this flag if you want to detect check box fields with ambiguous button values or if you want to keep the behavior of SignDoc SDK 4.0 and earlier.

If this flag is not set, the first non-Off value of a check box field will be used as button value. The ordering used for determining the first non-Off value is unspecified and may change with different versions of SignDoc SDK.

This flag is used for PDF documents only, it is ignored for TIFF documents.

See also
SIGNDOC_Document_getField(), SIGNDOC_Document_getFlags(), SIGNDOC_Document_setFlags(), SIGNDOC_DOCUMENT_FLAGS_RELAX_BYTE_RANGE
#define SIGNDOC_DOCUMENT_FLAGS_INSERT_AT_END   0x100

Flag for SIGNDOC_Document_setFlags(): Do not attempt to insert new objects into the logical structure in reading order.

If inserting in reading order fails or if this flag is set, new objects will be inserted at the end of the page's logical structure.

#define SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES   0x20

Flag for SIGNDOC_Document_setFlags(): Do not remove escape sequences specifying the natural language from text strings.

In PDF, text strings can contain escape sequences which specify the natural language (and optionally, the country) of the text. By default, those escape sequences are removed by functions like SIGNDOC_Field_getAlternateName(). If this flag is set, those escape sequences are not removed.

If you serialize and deserialize a SIGNDOC_Field object and this flag is not set, the escape sequences will get lost.

See also
SIGNDOC_Document_withoutEscapeSequences()
#define SIGNDOC_DOCUMENT_FLAGS_NO_KERNING_FOR_STANDARD_FONTS   0x08
#define SIGNDOC_DOCUMENT_FLAGS_RELAX_BYTE_RANGE   0x01

Flag for SIGNDOC_Document_setFlags(): Relax checking of ByteRange.

If this flag is set, ByteRange may have any values allowed by ISO 32000-1:2008. If this flag is not set, SIGNDOC_Document_verifySignature() and SIGNDOC_Document_verifySignature2() behave like Adobe Reader: ByteRange must have two ranges, sorted by offset, and covering the complete document. (Covering the complete document is required for PAdES, the other two criterions are not.)

This flag is used for PDF documents only, it is ignored for TIFF documents.

See also
SIGNDOC_Document_getFlags(), SIGNDOC_Document_setFlags(), SIGNDOC_Document_verifySignature(), SIGNDOC_DOCUMENT_FLAGS_AMBIGUOUS_BUTTON_VALUE_EMPTY
#define SIGNDOC_DOCUMENT_FLAGS_REQUIRE_ALTERNATE_FIELD_NAME   0x40

Flag for SIGNDOC_Document_setFlags(): Require alternate field names.

If this flag is set and the document claims PDF/UA conformance, SIGNDOC_Document_addField() will require an alternate field name to be set and SIGNDOC_Document_setField() won't allow removal of the alternate field name (by setting it to an empty string). If a PDF/UA document does not specify a natural language, the alternate field name must start with an escape sequence specifying the language (see SIGNDOC_DOCUMENT_FLAGS_USE_ESCAPE_SEQUENCES).

If this flag is not set and the document claims PDF/UA conformance, SIGNDOC_Document_addField() will use the fully qualified field name as alternate field name. If the document does not provide a natural language, "en" (or the language set with SIGNDOC_Document_setDefaultDocumentLanguage()) will be used. SIGNDOC_Document_setField() behaves likewise if the alternate field name is removed (by setting it to an empty string). If a PDF/UA document does not specify a natural language and the alternate field name does not start with an escape sequence specifying the language, language identifier "en" (or the language set with SIGNDOC_Document_setDefaultDocumentLanguage()) will be used (see SIGNDOC_DOCUMENT_FLAGS_USE_ESCAPE_SEQUENCES).

See also
SIGNDOC_Document_getDocumentLanguage(), SIGNDOC_Document_setDefaultDocumentLanguage()), SIGNDOC_Document_withEscapeSequence(), SIGNDOC_DOCUMENT_FLAGS_USE_ESCAPE_SEQUENCES, SIGNDOC_Field_setAlternateName()
#define SIGNDOC_DOCUMENT_FLAGS_REQUIRE_LANG   0x80

Flag for SIGNDOC_Document_setFlags(): Require language identifier for text.

If this flag is set and the document claims PDF/UA conformance and does not provide a natural language, SIGNDOC_Document_addText2() will fail unless a language identifier is passed in aLang and SIGNDOC_Document_addText() will always fail.

If this flag is not set and the document claims PDF/UA conformance and does not provide a natural language, SIGNDOC_Document_addText() and SIGNDOC_Document_addText2() will use language identifier "en" (or the language set with SIGNDOC_Document_setDefaultDocumentLanguage()) unless a language identifier is passed in aLang of SIGNDOC_Document_addText2().

See also
SIGNDOC_Document_getDocumentLanguage(), SIGNDOC_Document_setDefaultDocumentLanguage())
#define SIGNDOC_DOCUMENT_FLAGS_UNUSED_0X10   0x10

Flag for SIGNDOC_Document_setFlags(): Unused.

Formerly SIGNDOC_DOCUMENT_FLAGS_PREVENT_BREAKING_TAGGED_PDF, now ignored.

See also
SIGNDOC_Document_getFlags(), SIGNDOC_Document_setFlags(), SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_TAGGED_PDF
#define SIGNDOC_DOCUMENT_FLAGS_USE_DSS_ONLY   0x04

Flag for SIGNDOC_Document_setFlags(): Use only the Document Security Store for building the certificate chain and for checking the revocation state of the certificates, ignore any certificates, CRLs, and OCSP responses from the signature proper.

This flag is used for testing of SIGNDOC_Document_verifySignature() and SIGNDOC_Document_verifySignature2().

See also
SIGNDOC_Document_getFlags(), SIGNDOC_Document_setFlags(), SIGNDOC_Document_verifySignature(), SIGNDOC_DOCUMENT_FLAGS_AMBIGUOUS_BUTTON_VALUE_EMPTY, SIGNDOC_DOCUMENT_FLAGS_RELAX_BYTE_RANGE
#define SIGNDOC_DOCUMENT_FLAGS_USE_ESCAPE_SEQUENCES   0x200

Flag for SIGNDOC_Document_setFlags(): Use escape sequences to encode the natural language in alternate field names.

If a natural language for an alternate field name is provided by the caller (by using an escape sequence) or if SignDoc SDK provides a default natural language for an alternate name, this flag controls how the natural language will be encoded in the document:

If this flag is set, the natural language will be encoded in the string, enabling different languages for the alternate field names of different fields. However, this is quite useless, as currently existing assistive technologies do not support escape sequences.

If this flag is not set and the document does provide a natural language, any escape sequences will be removed from the alternate field name.

If this flag is not set and the document does not provide a natural language, the document's natural language will be set to the natural language of the alternate name.

See also
SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES, SIGNDOC_DOCUMENT_FLAGS_REQUIRE_ALTERNATE_FIELD_NAME
#define SIGNDOC_DOCUMENT_FLATTENANNOTATIONSFLAGS_INCLUDE_HIDDEN   0x04

Flags modifying the behavior of SIGNDOC_Document_flattenAnnotations(): Include hidden and invisible annotations.

#define SIGNDOC_DOCUMENT_FLATTENANNOTATIONSFLAGS_KEEP_STRCUTURE   SIGNDOC_DOCUMENT_FLATTENANNOTATIONSFLAGS_KEEP_STRUCTURE

Bug compatibility.

#define SIGNDOC_DOCUMENT_FLATTENANNOTATIONSFLAGS_KEEP_STRUCTURE   0x08

Flags modifying the behavior of SIGNDOC_Document_flattenAnnotations(): Do not modify logical structure.

Set this flag only if you don't care about the logical structure of the document and fear problems due to errors in the logical structure. For instance, you might want to use this flag if flattening annotations just for printing with a PDF component that does not support annotations and then throw away the document with the flattened annotations.

#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_INCLUDE_HIDDEN   0x04

Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Include hidden and invisible widgets.

#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_INCLUDE_SIGNATURE_SIGNED   0x02

Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Include signed signature fields.

#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_INCLUDE_SIGNATURE_UNSIGNED   0x01

Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Include unsigned signature fields.

#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_KEEP_STRUCTURE   0x08

Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Do not modify logical structure.

Set this flag only if you don't care about the logical structure of the document and fear problems due to errors in the logical structure. For instance, you might want to use this flag if flattening fields just for printing with a PDF component that does not support annotations and then throw away the document with the flattened fields.

#define SIGNDOC_DOCUMENT_HALIGNMENT_AUTO   4

Horizontal alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align left if the text begins with an LTR run, align right if the text begins with an RTL run.

#define SIGNDOC_DOCUMENT_HALIGNMENT_CENTER   1

Horizontal alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Center.

#define SIGNDOC_DOCUMENT_HALIGNMENT_LEFT   0

Horizontal alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align left.

#define SIGNDOC_DOCUMENT_HALIGNMENT_RIGHT   2

Horizontal alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align right.

#define SIGNDOC_DOCUMENT_IMPORTFLAGS_ATOMIC   0x01

Flags modifying the behavior of SIGNDOC_Document_importProperties() and SIGNDOC_Document_importPropertiesFromMemory(): all properties from XML or none (on error).

#define SIGNDOC_DOCUMENT_IMPORTIMAGEFLAGS_BRIGHTEST_TRANSPARENT   0x02

Flags modifying the behavior of SIGNDOC_Document_addImageFromFile(), SIGNDOC_Document_addImageFromFile2(), SIGNDOC_Document_addImageFromMemory(), SIGNDOC_Document_addImageFromMemory2(), SIGNDOC_Document_importPageFromImageBlob(), SIGNDOC_Document_importPageFromImageBlob2(), SIGNDOC_Document_importPageFromImageFile(), and SIGNDOC_Document_importPageFromImageFile2(): Make the brightest color transparent.

This flag may be specified for SIGNDOC_Document_addImageFromFile(), SIGNDOC_Document_addImageFromFile2(), SIGNDOC_Document_addImageFromMemory(), SIGNDOC_Document_addImageFromMemory2() only. SIGNDOC_Document_importPageFromImageBlob(), SIGNDOC_Document_importPageFromImageBlob2(), SIGNDOC_Document_importPageFromImageFile(), and SIGNDOC_Document_importPageFromImageFile2() always make the image opaque.

The rest of this description applies to SIGNDOC_Document_addImageFromFile(), SIGNDOC_Document_addImageFromFile2(), SIGNDOC_Document_addImageFromMemory(), and SIGNDOC_Document_addImageFromMemory2() only.

If the image has an alpha channel (or if its palette contains a transparent color), this flag will be ignored and the image's transparency will be used.

Transparency is not supported for JPEG images and JPEG-compressed TIFF images.

If this flag is not set, the image will be opaque unless the image has an alpha channel or transparent colors in its palette.

If this flag is set (and the image doesn't have an alpha channel and doesn't have transparent colors in its palette), white will be made transparent for truecolor images and the brightest color in the palette will be made transparent for indexed images (including grayscale images).

#define SIGNDOC_DOCUMENT_KEEPORREMOVE_KEEP   0

Tell SIGNDOC_Document_removePages() to keep or to remove the specified pages: Keep the specified pages, remove all other pages.

#define SIGNDOC_DOCUMENT_KEEPORREMOVE_REMOVE   1

Tell SIGNDOC_Document_removePages() to keep or to remove the specified pages: Remove the specified pages, keep all other pages.

#define SIGNDOC_DOCUMENT_SAVEFLAGS_AUTO_INCREMENTAL   0x20

Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Automatically set SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL if needed, automatically reset SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL if not allowed.

If this flag is set, SignDoc SDK will save the document incrementally or non-incrementally as needed; if you prefer saving incrementally, also set the SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL flag. If you prefer saving non-incrementally, do not set the SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL flag.

See also
SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL
#define SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL   0x01
#define SIGNDOC_DOCUMENT_SAVEFLAGS_LINEARIZED   0x04

Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Linearize the document (PDF).

This flag cannot be used with SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL.

Note
This flag is currently ignored, it will be supported again in a future version of SignDoc SDK.
#define SIGNDOC_DOCUMENT_SAVEFLAGS_PDF_1_4   0x08

Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Do not use features introduced after PDF 1.4 for saving the document.

This flag is assumed to be set for PDF 1.4 (and older) documents (PDF).

#define SIGNDOC_DOCUMENT_SAVEFLAGS_PDFA_BUTTONS   0x10

Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Fix appearance streams of check boxes and radio buttons for conformance with PDF/A-1 without Technical Corrigendum 2.

The appearance streams of a check box or radio button field added by SIGNDOC_Document_addField() or modified by SIGNDOC_Document_setField() or SIGNDOC_Document_applyFdf() do not conform to ISO 19005-1:2005 before Technical Corrigendum 2 (TC2). The relevant wording was fixed in TC2.

To make the appearance streams of check boxes and radio buttons conform to ISO 19005-1:2005 before TC2, save the document with this flag set. The document will be modified in memory and then saved. The document will not conform to TC2 and later versions of ISO 19005.

This flag is observed even if the document does not claim PDF/A-1 conformance.

Note
After "fixing" appearance streams, check boxes and radio buttons can no longer be modified or operated as the button values (ie, the set of possible values) is lost.
See also
SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO, SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE
#define SIGNDOC_DOCUMENT_SAVEFLAGS_REMOVE_UNUSED   0x02

Flags modifying the behavior of SIGNDOC_Document_saveToFile(), SIGNDOC_Document_saveToMemory(), and SIGNDOC_Document_saveToStream(): Remove unused objects (PDF).

This flag is ignored, unused objects are always removed.

#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_AUTO_ALIGNMENT   0x200

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Align left if the text begins with an LTR run, align right if the text begins with an RTL run.

This flag overrides for creating the appearance stream SIGNDOC_FIELD_JUSTIFICATION_LEFT and SIGNDOC_FIELD_JUSTIFICATION_RIGHT set by SIGNDOC_Field_setjustification(). This flag is ignored for SIGNDOC_FIELD_JUSTIFICATION_CENTER.

See also
SIGNDOC_DOCUMENT_setfieldflags_default_ltr, signdoc_document_setfieldflags_default_rtl, signdoc_document_setfieldflags_ltr, signdoc_document_setfieldflags_rtl
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR   0x4000

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Choose direction automatically, default to LTR.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 0 (LTR) for paragraphs having no strong directional character.

If none of SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR, SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL, SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL is set, SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR will be used.

At most one of SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR, SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL, SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL can be set.

Usage of SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR is not recommended as the visual representation of the value of the field may not match the value of the field (as interpreted by software which does not know that the paragraph direction is supposed to be default-LTR). Use SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR only as last resort if you cannot modify the text received from a default-LTR input field appropriately for paragraph direction LTR used in PDF fields.

See also
SIGNDOC_DOCUMENT_SETFIELDFLAGS_AUTO_ALIGNMENT
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL   0x8000

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Choose direction automatically, default to RTL.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 1 (RTL) for paragraphs having no strong directional character.

If none of SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR, SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL, SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL is set, SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR will be used.

At most one of SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR, SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL, SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL can be set.

Usage of SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL is not recommended as the visual representation of the value of the field may not match the value of the field (as interpreted by software which does not know that the paragraph direction is supposed to be default-RTL). Use SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL only as last resort if you cannot modify the text received from a default-RTL input field appropriately for paragraph direction LTR used in PDF fields.

See also
SIGNDOC_DOCUMENT_SETFIELDFLAGS_AUTO_ALIGNMENT
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_DONT_BREAK_LINES   0x100

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Do not break lines in multiline text fields.

You can use this flag to simulate the behavior of SignDoc SDK 4.0 and earlier.

#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FIT_HEIGHT_ONLY   0x40

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Compute the default font size such that the field contents fit the height of the field.

If the font size for a text field, list box field, or combo box field is zero (see SIGNDOC_TextFieldAttributes_setFontSize()), the default font size will be used. This flag controls how the default font size is computed.

If this flag is set, the font size will be computed such that the field contents fit the height of the field. This is the behavior required by the PDF specification. If the field contents are too long, they will be truncated.

If this flag is not set, the font size will be computed such that the field contents fit both the height and the width of the field. This is the behavior implemented in, for instance, Adobe Acrobat.

This flag is assumed to be not set if line breaking is enabled.

#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_FAIL   0x01

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Fail if no suitable font is found.

SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf() won't modify/add the field and will report error SIGNDOC_RETURNCODE_FONT_NOT_FOUND if no font covering all required characters is found.

This flag is provided for compatibility with existing code; SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf() now always assume this flag is set.

See also
SIGNDOC_DOCUMENT_SETFIELDFLAGS_MOVE, SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP, SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FORCE_BORDER_WIDTH   0x80

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Use the border width specified by the field even if that will obliterate the field contents.

If this flag is set, the behavior matches that of Adobe Acrobat. If this flag is not set, the border width will be reduced to 1/16 of the field height or field width (whichever is smaller) if the border width specified by the field wouldn't leave enough space for the field contents.

#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP   0x10

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Keep appearance streams.

If this flag is set, SIGNDOC_Document_setField() and SIGNDOC_Document_applyFdf() won't touch the existing (or non-existing) appearance streams, SIGNDOC_Document_addField() won't add any appearance streams.

Recomputing the appearance can have unexpected results (for instance, Adobe Acrobat and SignDoc SDK use different designs for check marks), therefore you might want to set this flag if you make changes that shall not affect the appearance such as setting the SIGNDOC_FIELD_FLAGS_READONLY flag.

At most one of SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP and SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP can be set.

See also
SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP, SIGNDOC_DOCUMENT_SETFIELDFLAGS_FIT_HEIGHT_ONLY
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_MOVE   0x08

Flags modifying the behavior of SIGNDOC_Document_setField(): Move or resize field.

SIGNDOC_Document_setField() does not update the coordinates of the field unless this flag is set as moving a field may require recomputing the appearance which can have unexpected results (for instance, Adobe Acrobat and SignDoc SDK use different designs for check marks). If this flag is not set, SIGNDOC_Document_setField() ignores the coordinates set with SIGNDOC_Field_setLeft(), SIGNDOC_Field_setBottom(), SIGNDOC_Field_setRight(), and SIGNDOC_Field_setTop().

SIGNDOC_Document_addField() ignores this flag, it always uses the coordinates. SIGNDOC_Document_applyFdf() ignores this flag, it never moves or resizes fields. In documents using Tagged PDF, widgets can be moved only within the page, they cannot be moved to a different page.

See also
SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP, SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL   0x2000

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Paragraph direction: RTL.

If none of SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR, SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL, SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL is set, SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR will be used.

At most one of SIGNDOC_DOCUMENT_SETFIELDFLAGS_LTR, SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL, SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_LTR, and SIGNDOC_DOCUMENT_SETFIELDFLAGS_DEFAULT_RTL can be set.

Usage of SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL is not recommended as the visual representation of the value of the field may not match the value of the field (as interpreted by software which does not know that the paragraph direction is supposed to be RTL). Use SIGNDOC_DOCUMENT_SETFIELDFLAGS_RTL only as last resort if you cannot modify the text received from an RTL input field appropriately for paragraph direction LTR used in PDF fields.

See also
SIGNDOC_DOCUMENT_SETFIELDFLAGS_AUTO_ALIGNMENT
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP   0x20

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Update appearance streams.

If this flag is set, SIGNDOC_Document_setField() and SIGNDOC_Document_applyFdf() will always recompute the appearance streams of the field. (SIGNDOC_Document_addField() always computes the appearance stream unless SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP is set).

You might want to use this flag after changing the document's default text field attributes.

At most one of SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP and SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP can be set.

If neither SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP and SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP is set, SIGNDOC_Document_setField() tries to update the appearance streams only if necessary; the exact behavior depends on the version of SignDoc SDK.

See also
SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP, SIGNDOC_DOCUMENT_SETFIELDFLAGS_FIT_HEIGHT_ONLY, SIGNDOC_Document_setTextFieldAttributes()
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_ALL_CURVES   0x80

Flag for SIGNDOC_Document_setShootInFoot(): Allow elliptic curves for signing which are not supported by Adobe products for Windows.

As of August 2016, Adobe Acrobat XI and 2015 for Windows support these curves: secp192r1 (prime192v1), secp256r1 (prime256v1), secp224r1, secp384r1, and secp521r1.

Setting this flag enables additional curves: prime192v2, prime192v3, prime239v1, prime239v2, prime239v3, secp112r1, secp112r2, secp160r1, secp160k1, secp256k1, secp128r1, secp128r2, secp160r2, secp192k1, secp224k1, brainpoolp160r1, brainpoolp192r1, brainpoolp224r1, brainpoolp256r1, brainpoolp320r1, brainpoolp384r1, and brainpoolp512r1. However, most of these are not supported (for signing and verifying) by SignDoc SDK for iOS, OS X, and Windows Store apps due to limitations of those operating systems.

This flag is ignored (and assumed to be set) for TIFF documents. This flag is ignored if SIGNDOC_SignatureParameters_setPKCS7() is used.

#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_PERMISSIONS   0x02

Flag for SIGNDOC_Document_setShootInFoot(): Allow operations to break signatures which grant permissions.

This flag is available for PDF documents only.

See also
SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_SIGNATURES, SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_INVALID_CERTIFICATE
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_SIGNATURES   0x01

Flag for SIGNDOC_Document_setShootInFoot(): Allow operations to break existing signatures in signature fields.

This flag is available for PDF documents only.

See also
SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_PERMISSIONS, SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_INVALID_CERTIFICATE
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_TAGGED_PDF   0x100

Flag for SIGNDOC_Document_setShootInFoot(): Allow operations to break Tagged PDF (and PDF/UA).

If this flag is not set, operations that would break Tagged PDF will report an error.

If this flag is set, all operations may break Tagged PDF without reporting an error. The target document's logical structure may be broken or incomplete (and thus violating PDF/UA) after such an operation.

This flag is available for PDF documents only.

See also
SIGNDOC_Document_isTaggedPDF(), SIGNDOC_DOCUMENT_FLAGS_FAIL_FOR_BROKEN_TARGET_STRUCTURE
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_INVALID_CERTIFICATE   0x04

Flag for SIGNDOC_Document_setShootInFoot(): Allow signing with a certificate that is not yet valid or no longer valid or which is not qualified for digital signatures.

See also
SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_PERMISSIONS, SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_SIGNATURES
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_NON_STANDARD_EXTERNAL_FONTS   0x08

Flag for SIGNDOC_Document_setShootInFoot(): Allow non-standard usage of external (non-embedded) TrueType and CFF fonts.

If this flag is not set, TrueType and CFF fonts must be embedded; when trying to use a TrueType or CFF font that is not embededded, error SIGNDOC_RETURNCODE_FONT_NOT_FOUND will be reported.

If this flag is set, external TrueType and CFF fonts are allowed. However, the document will violate Table 117, section 9.7.4.2 and section 9.7.5.2 of ISO 32000-1:2008.

#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_NOT_SHARED   0x10

Flag for SIGNDOC_Document_setShootInFoot(): Assume that appearance dictionaries and appearance streams are not shared.

If this flag is set and that assumption doesn't hold, changing one field may change the appearances of other fields.

At most one of SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_NOT_SHARED and SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_SHARED can be set. If neither flag is set, SIGNDOC_Document_setField() and SIGNDOC_Document_addSignature() look for shared objects. This can be expensive in terms of time and memory.

#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_SHARED   0x20

Flag for SIGNDOC_Document_setShootInFoot(): Always assume that appearance dictionaries and appearance streams are shared.

Setting this flag partially simulates the behavior of SignDoc SDK 3.x and older and causes a minor violation of section 12.7.3.3 of ISO 32000-1:2008 by SIGNDOC_Document_setField().

At most one of SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_NOT_SHARED and SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_SHARED can be set. If neither flag is set, SIGNDOC_Document_setField() and SIGNDOC_Document_addSignature() look for shared objects. This can be expensive in terms of time and memory.

#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_DONT_VERIFY_AFTER_SIGNING   0x40

Flag for SIGNDOC_Document_setShootInFoot(): Disable verification of signature after signing by SIGNDOC_Document_addSignature().

You might want to set this flag if you always perform a complete verification with SIGNDOC_Document_verifySignature() after calling SIGNDOC_Document_addSignature().

#define SIGNDOC_DOCUMENT_UPDATEDSSFLAGS_SIMULATE   0x01

Flags for SIGNDOC_Document_updateDSS() and SIGNDOC_Document_updateDSS2(): Perform all the checks but do not modify the document.

#define SIGNDOC_DOCUMENT_UPDATEDSSFLAGS_VRI   0x02

Flags for SIGNDOC_Document_updateDSS() and SIGNDOC_Document_updateDSS2(): Create VRI dictionaries.

This is discouraged by ETSI TS 103 172 V2.2.2 section 8.1.1.

#define SIGNDOC_DOCUMENT_VALIGNMENT_BOTTOM   2

Vertical alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align bottom.

#define SIGNDOC_DOCUMENT_VALIGNMENT_CENTER   1
#define SIGNDOC_DOCUMENT_VALIGNMENT_TOP   0

Vertical alignment for SIGNDOC_Document_addTextRect() and SIGNDOC_Document_addTextRect2(): Align top.

#define SIGNDOC_DOCUMENTLOADER_FLAGS_MAP_INTO_MEMORY   0x01

Flag for SIGNDOC_DocumentLoader_setFlags(): map input file into memory.

If this flag is set, SIGNDOC_DocumentLoader_loadFromFile() and other functions will try to map their input file into memory. Doing that may improve performance (on Android, in particular) but read errors and truncating the file will crash the process.

This flag is just a hint and may be ignored.

#define SIGNDOC_DOCUMENTLOADER_REMAININGDAYS_PRODUCT   0

Specify which expiry date shall be used by SIGNDOC_DocumentLoader_getRemainingDays(): Use the expiry date for the product.

#define SIGNDOC_DOCUMENTLOADER_REMAININGDAYS_SIGNING   1

Specify which expiry date shall be used by SIGNDOC_DocumentLoader_getRemainingDays(): Use the expiry date for signing documents.

#define SIGNDOC_ENCODING_LATIN_1   2

Encoding of strings: ISO 8859-1.

#define SIGNDOC_ENCODING_NATIVE   0

Encoding of strings: Windows "ANSI" for Windows, LC_CTYPE for Linux, file system representation for iOS.

#define SIGNDOC_ENCODING_UTF_8   1

Encoding of strings: UTF-8.

#define SIGNDOC_EXCEPTION_TYPE_BAD_ALLOC   1

Exception class: std::bad_alloc.

#define SIGNDOC_EXCEPTION_TYPE_GENERIC   4

Exception class: everything else.

#define SIGNDOC_EXCEPTION_TYPE_INVALID_ARGUMENT   8

Exception class: std::invalid_argument.

#define SIGNDOC_EXCEPTION_TYPE_PDF   2

Exception class: de::softpro::sppdf::Exception.

#define SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR   6

Exception class: de::softpro::spooc::EncodingError.

#define SIGNDOC_EXCEPTION_TYPE_SPOOC_GENERIC   5

Exception class: de::softpro::spooc::Exception.

#define SIGNDOC_EXCEPTION_TYPE_SPOOC_IO   7

Exception class: de::softpro::spooc::IOError.

#define SIGNDOC_EXCEPTION_TYPE_STL   3

Exception class: std::exception.

#define SIGNDOC_FALSE   0

Boolean value: false.

See also
SIGNDOC_TRUE, SIGNDOC_Boolean
#define SIGNDOC_FIELD_BORDERSTYLE_BEVELED   3

Border style: Rectangle looking embossed.

See also
SIGNDOC_Field_getBorderStyle(), SIGNDOC_Field_setBorderStyle()
#define SIGNDOC_FIELD_BORDERSTYLE_DASHED   2

Border style: Dashed rectangle.

See also
SIGNDOC_Field_getBorderStyle(), SIGNDOC_Field_setBorderStyle()
#define SIGNDOC_FIELD_BORDERSTYLE_INSET   4

Border style: Rectangle looking engraved.

See also
SIGNDOC_Field_getBorderStyle(), SIGNDOC_Field_setBorderStyle()
#define SIGNDOC_FIELD_BORDERSTYLE_OTHER   0

Border style: Unknown/unsupported border style.

See also
SIGNDOC_Field_getBorderStyle(), SIGNDOC_Field_setBorderStyle()
#define SIGNDOC_FIELD_BORDERSTYLE_SOLID   1

Border style: Solid rectangle.

See also
SIGNDOC_Field_getBorderStyle(), SIGNDOC_Field_setBorderStyle()
#define SIGNDOC_FIELD_BORDERSTYLE_UNDERLINE   5

Border style: Single line at bottom.

See also
SIGNDOC_Field_getBorderStyle(), SIGNDOC_Field_setBorderStyle()
#define SIGNDOC_FIELD_BUTTONSTYLE_CHECK_MARK   2

Style used for check boxes and radio buttons: Check mark.

See also
SIGNDOC_Field_getButtonStyle(), SIGNDOC_Field_setButtonStyle()
#define SIGNDOC_FIELD_BUTTONSTYLE_CIRCLE   5

Style used for check boxes and radio buttons: Circle (default for radio buttons).

See also
SIGNDOC_Field_getButtonStyle(), SIGNDOC_Field_setButtonStyle()
#define SIGNDOC_FIELD_BUTTONSTYLE_CROSS   3

Style used for check boxes and radio buttons: Cross.

See also
SIGNDOC_Field_getButtonStyle(), SIGNDOC_Field_setButtonStyle()
#define SIGNDOC_FIELD_BUTTONSTYLE_DEFAULT   0

Style used for check boxes and radio buttons: Default button style.

See also
SIGNDOC_Field_getButtonStyle(), SIGNDOC_Field_setButtonStyle()
#define SIGNDOC_FIELD_BUTTONSTYLE_DIAMOND   7

Style used for check boxes and radio buttons: Diamond.

See also
SIGNDOC_Field_getButtonStyle(), SIGNDOC_Field_setButtonStyle()
#define SIGNDOC_FIELD_BUTTONSTYLE_OTHER   1

Style used for check boxes and radio buttons: Unknown/unsupported style.

See also
SIGNDOC_Field_getButtonStyle(), SIGNDOC_Field_setButtonStyle()
#define SIGNDOC_FIELD_BUTTONSTYLE_SQUARE   6

Style used for check boxes and radio buttons: Square.

See also
SIGNDOC_Field_getButtonStyle(), SIGNDOC_Field_setButtonStyle()
#define SIGNDOC_FIELD_BUTTONSTYLE_STAR   4

Style used for check boxes and radio buttons: Star.

See also
SIGNDOC_Field_getButtonStyle(), SIGNDOC_Field_setButtonStyle()
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_ISSUERCERT   0x02

Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): IssuerCert.

Please see the PDF specification (ISO 32000-1:2008) for details.

#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_KEYUSAGE   0x20

Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): KeyUsage.

Please see the PDF specification (ISO 32000-1:2008) for details.

#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_POLICY   0x04

Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): Policy.

Please see the PDF specification (ISO 32000-1:2008) for details.

#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_SUBJECTCERT   0x01

Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): SubjectCert.

Please see the PDF specification (ISO 32000-1:2008) for details.

#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_SUBJECTDN   0x08

Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): SubjectDN.

Please see the PDF specification (ISO 32000-1:2008) for details.

#define SIGNDOC_FIELD_CERTSEEDVALUEFLAGS_URL   0x40

Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): URL.

Please see the PDF specification (ISO 32000-1:2008) for details.

#define SIGNDOC_FIELD_FLAGS_COMB   (1 << 12)

Field flags: Comb.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_COMBO   (1 << 14)

Field flags: Combo (always set for combo boxes).

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_COMMITONSELCHANGE   (1 << 18)

Field flags: CommitOnSelChange (for list boxes and combo boxes).

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_DONOTSCROLL   (1 << 11)

Field flags: DoNotScroll.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_DONOTSPELLCHECK   (1 << 10)

Field flags: DoNotSpellCheck.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_EDIT   (1 << 15)

Field flags: Edit (for combo boxes): If this flag is set, the user can enter an arbitrary value.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING   (1 << 29)

Field flags: Signature fields can be inserted after signing this field (TIFF only).

The SIGNDOC_FIELD_FLAGS_INVISIBLE, SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING, and SIGNDOC_FIELD_FLAGS_SINGLEPAGE flags cannot be modified.

By default, no fields can be inserted into a TIFF document after a signature field has been signed. The SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING flag changes this behavior. (SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING is ignored for PDF documents.)

If the SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING flag is set, document size increases more during signing this field than when this flaq is not set. Each signature will increase the document size by the initial size of the document (before the first signature was applied), approximately. That is, the first signature will approximately double the size of the document.

Inserting a signature field fails if there already are any signed signature fields that don't have this flag set.

A signature field for which SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING is not set (in a TIFF document) can only be cleared if no other signature fields that don't have SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING have been signed after the signature field to be cleared. Signature fields having SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING set can always be cleared.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_FILESELECT   (1 << 9)

Field flags: FileSelect.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_INVISIBLE   (1 << 30)

Field flags: Invisible (TIFF only).

The SIGNDOC_FIELD_FLAGS_INVISIBLE, SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING, and SIGNDOC_FIELD_FLAGS_SINGLEPAGE flags cannot be modified.

Invisible signature fields (SIGNDOC_FIELD_FLAGS_INVISIBLE) are invisible (ie, they look as if not inserted) until signed. Warning: signing an invisible signature field in a TIFF file may increase the size of the file substantially.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_MULTILINE   (1 << 7)

Field flags: Multiline (for text fields).

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

The value of a text field that has this flag set may contain hard line breaks encoded as "\r", "\n", or "\r\n".

The contents of the text field are top-aligned if this flag is set and vertically centered if this flag is not set.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_MULTISELECT   (1 << 17)

Field flags: MultiSelect (for list boxes).

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_NOEXPORT   (1 << 2)

Field flags: NoExport.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_NOTOGGLETOOFF   (1 << 3)

Field flags: NoToggleToOff.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

The SIGNDOC_FIELD_FLAGS_NOTOGGLETOOFF should be set for all radio button groups. Adobe products seem to ignore this flag being not set.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_PASSWORD   (1 << 8)

Field flags: Password.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_PUSHBUTTON   (1 << 5)

Field flags: Pushbutton.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_RADIO   (1 << 4)

Field flags: Radio.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_RADIOSINUNISON   (1 << 6)

Field flags: RadiosInUnison.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_READONLY   (1 << 0)

Field flags: ReadOnly.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_REQUIRED   (1 << 1)

Field flags: Required.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_RICHTEXT   (1 << 13)

Field flags: RichText.

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_SINGLEPAGE   (1 << 28)

Field flags: Signature applies to the containing page only (TIFF only).

The SIGNDOC_FIELD_FLAGS_INVISIBLE, SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING, and SIGNDOC_FIELD_FLAGS_SINGLEPAGE flags cannot be modified.

By default, signing a signature field signs the complete document, that is, modifications to any page are detected. For TIFF documents, this behavior can be changed for signature fields that have the SIGNDOC_FIELD_FLAGS_ENABLEADDAFTERSIGNING flag set: If the SIGNDOC_FIELD_FLAGS_SINGLEPAGE flag is set, the signature applies only to the page containing the signature field, modifications to other pages won't be detected. This flag can be used for speeding up verification of signatures.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAGS_SORT   (1 << 16)

Field flags: Sort (for list boxes and combo boxes).

See the PDF Reference for the meaning of these flags. Most field flags are supported for PDF documents only.

See also
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_JUSTIFICATION_CENTER   2

Justification for text fields and list boxes: Centered.

See also
SIGNDOC_Field_getJustification(), SIGNDOC_Field_setJustification()
#define SIGNDOC_FIELD_JUSTIFICATION_LEFT   1

Justification for text fields and list boxes: Left-justified.

See also
SIGNDOC_Field_getJustification(), SIGNDOC_Field_setJustification()
#define SIGNDOC_FIELD_JUSTIFICATION_NONE   0

Justification for text fields and list boxes: Justification does not apply (not a text field or a list box).

See also
SIGNDOC_Field_getJustification(), SIGNDOC_Field_setJustification()
#define SIGNDOC_FIELD_JUSTIFICATION_RIGHT   3

Justification for text fields and list boxes: Right-justified.

See also
SIGNDOC_Field_getJustification(), SIGNDOC_Field_setJustification()
#define SIGNDOC_FIELD_LOCKTYPE_ALL   2

Fields to be locked when signing this signature field: Lock all fields in the document.

See also
SIGNDOC_Field_getLockType(), SIGNDOC_Field_setLockType()
#define SIGNDOC_FIELD_LOCKTYPE_EXCLUDE   4

Fields to be locked when signing this signature field: Lock all fields except the lock fields specified by SIGNDOC_Field_addLockField() etc.

See also
SIGNDOC_Field_getLockType(), SIGNDOC_Field_setLockType()
#define SIGNDOC_FIELD_LOCKTYPE_INCLUDE   3

Fields to be locked when signing this signature field: Lock all lock fields specified by SIGNDOC_Field_addLockField() etc.

See also
SIGNDOC_Field_getLockType(), SIGNDOC_Field_setLockType()
#define SIGNDOC_FIELD_LOCKTYPE_NA   0

Fields to be locked when signing this signature field: Not a signature field.

See also
SIGNDOC_Field_getLockType(), SIGNDOC_Field_setLockType()
#define SIGNDOC_FIELD_LOCKTYPE_NONE   1

Fields to be locked when signing this signature field: Don't lock any fields.

See also
SIGNDOC_Field_getLockType(), SIGNDOC_Field_setLockType()
#define SIGNDOC_FIELD_SIGNATURETYPE_APPROVAL   2

Signature type: Approval signature (that's the normal type of signature).

See also
SIGNDOC_Field_getSignatureType()
#define SIGNDOC_FIELD_SIGNATURETYPE_CERTIFICATION   3

Signature type: Certification signature (signed by the author).

See also
SIGNDOC_Field_getSignatureType()
#define SIGNDOC_FIELD_SIGNATURETYPE_DOCUMENT_TIME_STAMP   4

Signature type: Document time stamp.

See also
SIGNDOC_Field_getSignatureType()
#define SIGNDOC_FIELD_SIGNATURETYPE_NOT_A_SIGNATURE_FIELD   0

Signature type: The field is not a signature field.

See also
SIGNDOC_Field_getSignatureType()
#define SIGNDOC_FIELD_SIGNATURETYPE_NOT_SIGNED   1

Signature type: The signature field is not signed.

See also
SIGNDOC_Field_getSignatureType()
#define SIGNDOC_FIELD_TYPE_CHECK_BOX   2

Field types: Check box field (PDF).

Most field types are supported for PDF documents only.

#define SIGNDOC_FIELD_TYPE_COMBO_BOX   8

Field types: Combo box (drop-down box) (PDF).

Most field types are supported for PDF documents only.

#define SIGNDOC_FIELD_TYPE_LIST_BOX   5

Field types: List box (PDF).

Most field types are supported for PDF documents only.

#define SIGNDOC_FIELD_TYPE_PUSHBUTTON   1

Field types: Pushbutton (PDF).

Most field types are supported for PDF documents only.

#define SIGNDOC_FIELD_TYPE_RADIO_BUTTON   3

Field types: Radio button (radio button group) (PDF).

Most field types are supported for PDF documents only.

#define SIGNDOC_FIELD_TYPE_SIGNATURE_DIGSIG   6

Field types: Digital signature field (Adobe DigSig in PDF, SOFTPRO signature in TIFF).

Most field types are supported for PDF documents only.

#define SIGNDOC_FIELD_TYPE_SIGNATURE_SIGNDOC   7

Field types: Digital signature field (traditional SignDoc, no longer supported) (PDF).

Most field types are supported for PDF documents only.

#define SIGNDOC_FIELD_TYPE_TEXT   4

Field types: Text field (PDF).

Most field types are supported for PDF documents only.

#define SIGNDOC_FIELD_TYPE_UNKNOWN   0

Field types: Unknown type.

Most field types are supported for PDF documents only.

#define SIGNDOC_FIELD_WIDGETFLAGS_HIDDEN   (1 << (2 - 1))

Annotation flags of a widget: do not display or print or interact.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

#define SIGNDOC_FIELD_WIDGETFLAGS_INVISIBLE   (1 << (1 - 1))

Annotation flags of a widget: do not display non-standard annotation.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

See also
SIGNDOC_Field_getWidgetFlags(), SIGNDOC_Field_setWidgetFlags()
#define SIGNDOC_FIELD_WIDGETFLAGS_LOCKED   (1 << (8 - 1))

Annotation flags of a widget: annotation cannot be deleted or modified, but its value can be changed.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

#define SIGNDOC_FIELD_WIDGETFLAGS_LOCKEDCONTENTS   (1 << (10 - 1))

Annotation flags of a widget: value cannot be changed.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

#define SIGNDOC_FIELD_WIDGETFLAGS_NOROTATE   (1 << (5 - 1))

Annotation flags of a widget: do not rotate to match page's rotation.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

#define SIGNDOC_FIELD_WIDGETFLAGS_NOVIEW   (1 << (6 - 1))

Annotation flags of a widget: do not display or interact.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

#define SIGNDOC_FIELD_WIDGETFLAGS_NOZOOM   (1 << (4 - 1))

Annotation flags of a widget: do not scale to match magnification.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

#define SIGNDOC_FIELD_WIDGETFLAGS_PRINT   (1 << (3 - 1))

Annotation flags of a widget: print the annotation.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

#define SIGNDOC_FIELD_WIDGETFLAGS_READONLY   (1 << (7 - 1))

Annotation flags of a widget: do not interact.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

#define SIGNDOC_FIELD_WIDGETFLAGS_TOGGLENOVIEW   (1 << (9 - 1))

Annotation flags of a widget: toggle SIGNDOC_FIELD_WIDGETFLAGS_NOVIEW for certain events.

See the PDF Reference for the meaning of these flags. All these flags are supported for PDF documents only, they are ignored for TIFF documents.

#define SIGNDOC_FINDTEXTOCCURRENCE_GETBOUNDINGBOXESFLAGS_INDIVIDUAL   0x02

Flag for SIGNDOC_FindTextOccurrence_getBoundingBoxes(): Return one bounding box per glyph.

#define SIGNDOC_FINDTEXTOCCURRENCE_GETBOUNDINGBOXESFLAGS_LOGICAL   0x04

Flag for SIGNDOC_FindTextOccurrence_getBoundingBoxes(): Compute logical bounding boxes.

If this flag is set, a heuristic will be used for computing bounding boxes that reflect the logical flow of the text. For instance, line breaks will start a new bounding box.

RTL text is not yet supported.

#define SIGNDOC_FINDTEXTOCCURRENCE_GETBOUNDINGBOXESFLAGS_SINGLE   0x01

Flag for SIGNDOC_FindTextOccurrence_getBoundingBoxes(): Compute a single bounding box, viz, the smallest rectangle containing all the glyph bounding boxes.

#define SIGNDOC_IMAGEPARAMETERS_TYPE_BOOLEAN   1
#define SIGNDOC_IMAGEPARAMETERS_TYPE_COLOR   5
#define SIGNDOC_IMAGEPARAMETERS_TYPE_INTEGER   2
#define SIGNDOC_IMAGEPARAMETERS_TYPE_NUMBER   3
#define SIGNDOC_IMAGEPARAMETERS_TYPE_STRING   4
#define SIGNDOC_IMAGEPARAMETERS_TYPE_UNDEFINED   0

Return value of SIGNDOC_ImageParameters_getType(): The specified parameter is not defined.

#define SIGNDOC_MATCHPARAMETERS_FLAGS_ENGINE_AUTO   0x0001

Flag for integer parameter "Flags": use all matching engines suitable for the data at hand.

The static matching engine will always be used, the DStat matching engine and the dynamic matching engine will be used when matching a signature against a reference with at least 3 signatures.

This flag is equivalent to boolean parameter "EngineAuto".

#define SIGNDOC_MATCHPARAMETERS_FLAGS_ENGINE_DSTAT   0x0008

Flag for integer parameter "Flags": enable statistic matching (DStat engine).

This flag is equivalent to boolean parameter "EngineDStat".

#define SIGNDOC_MATCHPARAMETERS_FLAGS_ENGINE_DYNAMIC   0x0004

Flag for integer parameter "Flags": enable dynamic matching (ADSV engine).

This flag is equivalent to boolean parameter "EngineDynamic".

#define SIGNDOC_MATCHPARAMETERS_FLAGS_ENGINE_STATIC   0x0002

Flag for integer parameter "Flags": enable static matching (SIVAL engine).

This flag is equivalent to boolean parameter "EngineStatic".

#define SIGNDOC_MATCHPARAMETERS_FLAGS_KEEP_RESOLUTION   0x0400

Flag for integer parameter "Flags": do not scale signatures.

If this flag is set, signatures, references, and signature images will be matched without adjusting their resolutions, even if those resolutions are different.

If this flag is not set, a common resolution will be computed as the smallest resolution encountered in the involved signatures, references, and signature images, and integer parameter "MaxResolution" (that parameter will be ignored if its value is 0). Then, the sample coordinates in signatures and references will be scaled to the computed resolutions and signature images will be resized to that resolution. (The SIGNDOC_SignatureData and SIGNDOC_Image objects won't be modified.)

See also integer parameter "MaxResolution". This flag is equivalent to boolean parameter "KeepResolution

#define SIGNDOC_MATCHPARAMETERS_FLAGS_MIRROR   0x0200

Flag for integer parameter "Flags": mirror rendered signature and reference images for static matching.

Set this flag when matching signatures that have been written in RTL scripts.

This flag is ignored unless the static matching engine is used. This flag is equivalent to boolean parameter "Mirror".

#define SIGNDOC_MATCHPARAMETERS_FLAGS_NORMALIZE_SAMPLE_RATES   0x0100

Flag for integer parameter "Flags": normalize the sample rates of signatures and references for dynamic matching.

This flag is ignored unless the dynamic matching engine is used. This flag is equivalent to boolean parameter "NormalizeSampleRates".

#define SIGNDOC_MATCHPARAMETERS_TYPE_BOOLEAN   1

Return value of SIGNDOC_MatchParameters_getType(): Boolean.

#define SIGNDOC_MATCHPARAMETERS_TYPE_INTEGER   2

Return value of SIGNDOC_MatchParameters_getType(): Integer.

#define SIGNDOC_MATCHPARAMETERS_TYPE_UNDEFINED   0

Return value of SIGNDOC_MatchParameters_getType(): The specified parameter is not defined.

#define SIGNDOC_PROPERTY_TYPE_BOOLEAN   1

Property types: boolean.

#define SIGNDOC_PROPERTY_TYPE_INTEGER   2

Property types: integer.

#define SIGNDOC_PROPERTY_TYPE_STRING   4

Property types: string.

#define SIGNDOC_RENDERPARAMETERS_TYPE_BOOLEAN   1
#define SIGNDOC_RENDERPARAMETERS_TYPE_INTEGER   2
#define SIGNDOC_RENDERPARAMETERS_TYPE_NUMBER   3
#define SIGNDOC_RENDERPARAMETERS_TYPE_STRING   4
#define SIGNDOC_RENDERPARAMETERS_TYPE_STRING2   6
#define SIGNDOC_RENDERPARAMETERS_TYPE_UNDEFINED   0

Return value of SIGNDOC_RenderParameters_getType(): The specified parameter is not defined.

#define SIGNDOC_RETURNCODE_AMBIGUOUS_CERTIFICATE   26

Return code: Ambiguous certificate (26).

More than one matching certificate found and SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK is specified.

#define SIGNDOC_RETURNCODE_ANNOTATION_NOT_FOUND   22

Return code: Annotation not found (22).

Returned by SIGNDOC_Document_getAnnotation().

#define SIGNDOC_RETURNCODE_ATTACHMENT_EXISTS   24

Return code: Attachment already exists (24).

#define SIGNDOC_RETURNCODE_ATTACHMENT_NOT_FOUND   23

Return code: Attachment not found (23).

#define SIGNDOC_RETURNCODE_CANCELLED   17

Return code: Operation cancalled (17).

Certificate selection dialog cancelled by user.

#define SIGNDOC_RETURNCODE_FIELD_EXISTS   14

Return code: Field already exists (14).

Field names must be unique.

#define SIGNDOC_RETURNCODE_FIELD_NOT_FOUND   2

Return code: Field not found (2).

The specified field does not exist or (if a signature field is expected) is not a signature field.

#define SIGNDOC_RETURNCODE_FIELD_NOT_SIGNED   20

Return code: Field not signed (20).

Returned by SIGNDOC_Document_copyAsSignedToStream() and SIGNDOC_Document_copyAsSignedToMemory() if the field is not signed.

#define SIGNDOC_RETURNCODE_FONT_NOT_FOUND   6
#define SIGNDOC_RETURNCODE_INVALID_ARGUMENT   1

Return code: Invalid argument (1).

An invalid value was passed for at least one parameter. This return code can also be returned for invalid documents.

#define SIGNDOC_RETURNCODE_INVALID_IMAGE   4

Return code: Invalid image (4).

The specified image cannot be used. This can happen if the image's format is unsupported or if the image is broken.

#define SIGNDOC_RETURNCODE_INVALID_PROFILE   3

Return code: Invalid profile (3).

The specified profile is unknown or not applicable.

#define SIGNDOC_RETURNCODE_INVALID_SIGNATURE   21
#define SIGNDOC_RETURNCODE_INVALID_STRUCTURE   28

Return code: Invalid logical structure (28).

The document has invalid logical structure.

See also
SIGNDOC_DOCUMENT_FLAGS_FAIL_FOR_BROKEN_TARGET_STRUCTURE
#define SIGNDOC_RETURNCODE_INVALID_VALUE   30
#define SIGNDOC_RETURNCODE_IO_ERROR   9

Return code: I/O error (9).

An error occurred while trying to open, read, or write a file.

#define SIGNDOC_RETURNCODE_LICENSE_ERROR   15

Return code: License error (15).

License initialization failed (missing or invalid license key) or license check failed (you don't have a license for the requested operation).

#define SIGNDOC_RETURNCODE_NO_BIOMETRIC_DATA   18

Return code: No biometric data (18).

This code is returned by member functions of SIGNDOC_VerificationResult if there is no biometric data or no biometric hash.

#define SIGNDOC_RETURNCODE_NO_CERTIFICATE   25

Return code: No certificate found (25).

No (matching) certificate found and SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_CREATE_SELF_SIGNED is not specified.

#define SIGNDOC_RETURNCODE_NOT_ALLOWED   27

Return code: Operation not allowed (27).

Operation not allowed due to document being signed or conforming to PDF/A or PDF/UA or having logical structure.

See also
SIGNDOC_Document_removePDFA(), SIGNDOC_Document_removePDFUA(), SIGNDOC_Document_setShootInFoot()
#define SIGNDOC_RETURNCODE_NOT_AVAILABLE   31

Return code: Not available (31).

The requested value is not available. This code is returned by some member functions of SIGNDOC_Annotation for objects returned by SIGNDOC_Document_getAnnotation().

#define SIGNDOC_RETURNCODE_NOT_SUPPORTED   8

Return code: Operation not supported (8).

In most cases, this return code indicates invalid data (such as broken or unsupported biometric data).

#define SIGNDOC_RETURNCODE_NOT_VERIFIED   10

Return code: Signature not verified (10).

This code is returned by member functions of SIGNDOC_VerificationResult if SIGNDOC_Document_verifySignature() has not been called.

#define SIGNDOC_RETURNCODE_OK   0

Return code: No error (0).

The operation completed successfully.

#define SIGNDOC_RETURNCODE_PAGE_NOT_FOUND   12

Return code: Page not found (12).

The specified page number is not a valid page number.

#define SIGNDOC_RETURNCODE_PROPERTY_NOT_FOUND   11

Return code: Property not found (11).

The specified property does not exist.

#define SIGNDOC_RETURNCODE_TYPE_MISMATCH   5

Return code: Type mismatch (5).

The type (e.g., string) implied by the function does not match the type of the named property.

#define SIGNDOC_RETURNCODE_UNEXPECTED_ERROR   16

Return code: Unexpected error (16).

Something failed in an unexpected way or there's no return code that fits the failure.

#define SIGNDOC_RETURNCODE_UNKNOWN_PARAMETER   29
#define SIGNDOC_RETURNCODE_WRONG_COLLECTION   13

Return code: Wrong collection (13).

The specified property exists, but not in the specified collection.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_ANDROID_TOUCH   513

Capture device identifier: mobilephone touch.

Android touch device.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_BAMBOO   23

Capture device identifier: Wacom Bamboo.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_BLUEM   16

Capture device identifier: Stepover blueM II.

Stepover blueM II tablet without LCD.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_BLUEMLCD   17

Capture device identifier: Stepover blueM II with LCD.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_BS_HESY   4

Capture device identifier: BS Hesy.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EID   12

Capture device identifier: Interlink Epad-ID.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EID2   21

Capture device identifier: Interlink EPad-ID Pro.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EINK   8

Capture device identifier: Interlink ePad-Ink E-Signature.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EINK2   20

Capture device identifier: Interlink EPad-Ink Pro.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_ENSIGN10   1000

Capture device identifier: Euronovate ENSign10.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EPAD2   15

Capture device identifier: Interlink ePad II.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EPADLS   19

Capture device identifier: Interlink EPad-LS.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_EPOS   6

Capture device identifier: Interlink ePAD Point of Sales.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_ESIG   7

Capture device identifier: Interlink ePad E-Signature.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_GRAPHIRE   3

Capture device identifier: Wacom Graphire.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_HTC_P510E   512

Capture device identifier: HTC Flyer P510e.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_HTML5_CAPTURE   514

Capture device identifier: HTML5 capture client.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_INGENICO_SC350   25

Capture device identifier: Ingenico iSC350.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_INTUOS   1

Capture device identifier: Wacom Intuos.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_IPAD   501

Capture device identifier: Apple iPad.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_IPHONE   502

Capture device identifier: Apple iPhone.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_IPOD   503

Capture device identifier: Apple iPod.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_MOBINETIX   2

Capture device identifier: MobiNetix.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_MTLDC   13

Capture device identifier: MotionTouch LegaPad LCD.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_MTLPD   14

Capture device identifier: MotionTouch LegaPad.

MotionTouch LegaPad tablet without LDC.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_OLIVETTI_GRAPHOS_A10   515

Capture device identifier: Olivetti Graphos A10.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_OLIVETTI_ZPAD_B8001   510

Capture device identifier: Olivetti Graphos zPad-B8001.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_PENPARTNER   9

Capture device identifier: Wacom PenPartner.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_PL400   5

Capture device identifier: Wacmo PL400.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_SAMSUNG_GT_N7000   511

Capture device identifier: Samsung GT-N7000.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_SIGNPAD   22

Capture device identifier: Wacom SignPad.

STU-300, STU-500, etc.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_STEPOVER   11

Capture device identifier: StepOver.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_TABLETPC   10

Capture device identifier: Tablet PC.

Integrated Tablet PC capture device.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_TZSE   18

Capture device identifier: Topaz tablet with LCD (and pressure).

Topaz LCD SE.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_UNKNOWN   0

Capture device identifier: Unknown capture device.

Most of the capture device identifiers are obsolete. This one isn't.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_USER_FIRST   10000

Capture device identifier: First user-defined device identifier.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_USER_LAST   10999

Capture device identifier: Last user-defined device identifier.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_VERIFONE_MX   24

Capture device identifier: Verifone MX 800 series.

#define SIGNDOC_SIGNATUREDATA_CAPTUREDEVICE_VPSIGN   1001

Capture device identifier: VPSign.

#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT2   0x00000200

Blob format: Use ISO/IEC 19785-3:2015 patron format type 2 ("minimum simple byte-oriented patron format") CBEFF wrapper.

This can be used with SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2007TC1 or SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014. With SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2007TC1, this patron format cannot be used for saving references.

Deprecated:
Patron format type 2 has been deprecated in ISO/IEC 19785-3:2015, please use SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014 with SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_NONE.
See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory()
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT3   0x00000300

Blob format: Use ISO/IEC 19785-3:2015 patron format type 3 ("maximum simple patron format (byte oriented) using presence bitmap") CBEFF wrapper.

This can be used with SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2007TC1 or SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014. With SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2007TC1, this patron format cannot be used for saving references.

Deprecated:
Patron format type 3 has been deprecated in ISO/IEC 19785-3:2015, please use SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014 with SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_NONE.
See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory()
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT6   0x00000600

Blob format: Use ISO/IEC 19785-3:2015 patron format type 6 ("complex patron format") CBEFF wrapper.

This can be used with SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2007TC1 or SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014. Both signatures and references can be saved with this patron format.

Deprecated:
Patron format type 6 has been deprecated in ISO/IEC 19785-3:2015, please use SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014 with SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_NONE.
See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory()
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_NONE   0x00000000

Blob format: No ISO/IEC 19785-3:2015 (CBEFF) wrapper.

This should be used with SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014 (version 2) only as ISO/IEC 19794-7:2007 (version 1) requires a CBEFF wrapper. However, some products accept only unwrapped version 1 BDBs.

Note
This is the default value for the CBEFF wrapper as the value of this constant is zero.
Compact format (not yet implemented) requires a CBEFF wrapper.
See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory()
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2007TC1   0x00001000

Blob format: ISO/IEC 19794-7:2007 (with Technical Corrigendum 1) Biometric Data Block (version 1).

Please also use SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT2, SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT3, or SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT6 to specify the ISO/IEC 19785-3 wrapper. Alternateively, use SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_NONE (signature) to omit the CBEFF wrapper; the CBEFF wrapper is mandatory in ISO/IEC 19794-7:2007, but some products accept only unwrapped BDBs. SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT6 is required for saving references, signatures can be saved with any of these constants.

Please also use SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_FULL (default) to select the data format.

You can include flag SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_METERS for using ISO/IEC 19794-7:2007 without Technical Corrigendum 1.

You can include flag SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_COMPAT1 for bug compatibility with SignWare before version 3.2.9.0.

You can include flag SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_EXT_DATA to omit extended data.

See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory()
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014   0x00002000

Blob format: ISO/IEC 19794-7:2014 Biometric Data Block (version 2).

Please also use SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_NONE, SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT2, SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT3, or SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT6 to specify the ISO/IEC 19785-3 wrapper. Unlike ISO/IEC 19794-7:2007, ISO/IEC 19794-7:2014 allows BDBs without CBEFF wrapper. Both signatures and references can be saved with any of these constants.

Please also use SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_FULL (default) to select the data format.

See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory()
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_FULL   0x00000000

Blob format: ISO/IEC 19794-7 full format.

To be used with either SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2007TC1 or SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2014.

Contrast with compact format, compression format, and XML, all of which are not yet supported.

Note
This is the default value for the data format as the value of this constant is zero.
See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory()
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_COMPAT1   0x00400000

Blob format flag: write with bug compatibility with SignWare before version 3.2.9.0.

ISO-format signatures written by SignWare before version 3.2.9.0 have multiple issues:

  • the origin is in the upper left corner rather than in the lower left corner.
  • Technical Corrigendum 1 for ISO/IEC 19794-7:2007 is not implemented. In consequence, the X and Y scaling factors are based on meters rather than millimeters.
  • for CBEFF patron format type 6, garbage is written for bdbCreationDate if the signature does not have a timestamp.
  • the CBEFF wrapper does not use the correct BDB format type.

These bugs have been fixed in SignWare 3.2.9.0.

Use this flag for saving signatures in a format that is bug-compatible with old versions of SignWare (except for the bdbCreationDate bug). Extended data will be omitted (see SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_EXT_DATA).

When saving a signature or reference, this flag takes effect only if the Biometric Data Block is in ISO/IEC 19794-7:2007 format (version 1) with a patron format type 2, 3, or 6 CBEFF wrapper, that is, for format SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19794_7_2007TC1 (with SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT2, SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT3, or SIGNDOC_SIGNATUREDATA_FORMAT_ISO_19785_3_FORMAT6).

When loading a signature or reference, this flag must not be set.

This flag is ignored for non-ISO formats.

See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory(), SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_METERS, SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_FIX
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_METERS   0x00100000

Blob format flag: Use meters rather than millimeters for X and Y coordinates.

ISO-format signatures written by SignWare before version 3.2.9.0 use meters as units for the X and Y coordinates as specified by the original version of ISO/IEC 19794-7:2007. Technical Corrigendum for ISO/IEC 19794-7:2007 changed the units to millimeters.

Set this flag for compatibility with software that implements ISO/IEC 19794-7:2007 without Technical Corrigendum 1.

This flag takes effect only if the Biometric Data Block is in ISO/IEC 19794-7:2007 format (version 1).

For loading signatures or references written by SignWare before version 3.2.9.0, just leave SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_FIX unset rather than setting this flag.

For saving signatures or references to be read by SignWare before version 3.2.9.0, set SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_COMPAT1 rather than this flag.

This flag is ignored for non-ISO formats.

See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory(), SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_COMPAT1, SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_FIX
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_EXT_DATA   0x00800000

Blob format flag: Omit or ignore extended data.

By default, extended data will be written that includes the following information:

  • a version number
  • the SPTablet device ID
  • the tablet serial ID

If this flag is set, extended data won't be added when saving a signature or reference and extended data will be ignored when loading a signature or reference.

This flag is ignored for non-ISO formats.

See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory(), SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_COMPAT1
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_FIX   0x00200000

Blob format flag: do not attempt to automatically fix ISO-format signatures that have been written by SignWare before version 3.2.9.0.

ISO-format signatures written by SignWare before version 3.2.9.0 have multiple issues:

  • the origin is in the upper left corner rather than in the lower left corner.
  • Technical Corrigendum 1 for ISO/IEC 19794-7:2007 is not implemented. In consequence, the X and Y scaling factors are based on meters rather than millimeters.
  • for CBEFF patron format type 6, garbage is written for bdbCreationDate if the signature does not have a timestamp.
  • the CBEFF wrapper does not use the correct BDB format type.

These bugs have been fixed in SignWare 3.2.9.0.

When loading a signature or reference, all of these issues will be fixed automatically if data written by SignWare before version 3.2.9.0 is detected, unless this flag (SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_NO_FIX) is set.

If this flag is set, no attempt is made to fix the data. If the signature or reference was indeed written by SignWare before version 3.2.9.0, loading will fail or the data read will be incorrect.

When saving a signature or reference, this flag must not be set.

This flag is ignored for non-ISO formats.

See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory(), SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_COMPAT1, SIGNDOC_SIGNATUREDATA_FORMAT_ISO_FLAG_METERS
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_BDB   0x0000f000
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_DATA   0x000f0000
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_FLAGS   0xfff00000
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_SINGLE   0x000000ff

Mask for blob format: formats specified by a single value.

See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory()
#define SIGNDOC_SIGNATUREDATA_FORMAT_ISO_MASK_WRAPPER   0x00000f00
#define SIGNDOC_SIGNATUREDATA_FORMAT_SOFTPRO   4

Blob format: SOFTPRO Flatfile format for dynamic signatures and references.

See also
SIGNDOC_SignatureData_saveToFile(), SIGNDOC_SignatureData_saveToFileW(), SIGNDOC_SignatureData_saveToMemory()
#define SIGNDOC_SIGNATUREDATA_TYPE_EMPTY   0

Return value for SIGNDOC_SignatureData_getType(): empty.

SIGNDOC_SignatureData objects of this type do not contain any handwritten signature.

See also
SIGNDOC_SignatureData_getType()
#define SIGNDOC_SIGNATUREDATA_TYPE_REFERENCE   2

Return value for SIGNDOC_SignatureData_getType(): reference.

SIGNDOC_SignatureData objects of this type contain two or more handwritten signatures.

See also
SIGNDOC_SignatureData_getType()
#define SIGNDOC_SIGNATUREDATA_TYPE_SIGNATURE   1

Return value for SIGNDOC_SignatureData_getType(): signature.

SIGNDOC_SignatureData objects of this type contain exactly one handwritten signature.

See also
SIGNDOC_SignatureData_getType()
#define SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_ALL   0

Integer parameter AddCertificates: Include all intermediate certificates and the root certificate.

This requires building at signing time the complete certificate chain up to a self-signed certificate. It does not matter whether that self-signed certificate is a trusted root CA certificate or not.

See also
SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_NONE, SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_TRUSTED
#define SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_NONE   1

Integer parameter AddCertificates: Do not include any certificates.

It is assumes that the signing certificate is a self-signed certificate or all intermediate certificates are available at verification time.

See also
SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_ALL, SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_TRUSTED
#define SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_TRUSTED   2

Integer parameter AddCertificates: Include all intermediate certificates and the root certificate, require the root certificate to be trusted.

This requires building at signing time the complete certificate chain up to a self-signed certificate. That self-signed certificate must be trusted, otherwise signing will fail.

See also
SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_ALL, SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_NONE
#define SIGNDOC_SIGNATUREPARAMETERS_ADDREVOCATIONINFO_ADD   0x01

Flag for integer parameter AddRevocationInfo: Add revocation data.

This requires building at signing time the complete certificate chain up to a self-signed certificate. It does not matter whether that self-signed certificate is a trusted root CA certificate or not.

#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_BINARY   2

Select how to encrypt the biometric data: Binary 256-bit key.

Used for integer parameter "BiometricEncryption". The biometric data to be encrypted is specified by blob parameter "BiometricData".

Blob parameter "BiometricKey" (see SIGNDOC_SignatureParameters_setBlob()) must be set.

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SignatureParameters_setBlob()
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_DONT_STORE   4

Select how to encrypt the biometric data: The biometric data won't be stored in the document.

Used for integer parameter "BiometricEncryption".

Use this value if you want to use the biometric data for generating the signature image only. Note that using an automatically generated self-signed certificate is secure only if biometric data is stored in the document using asymmetric encryption.

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SignatureParameters_setBlob()
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_FIXED   1

Select how to encrypt the biometric data: Fixed key (no security).

Used for integer parameter "BiometricEncryption". The biometric data to be encrypted is specified by blob parameter "BiometricData".

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SignatureParameters_setBlob()
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_PASSPHRASE   3

Select how to encrypt the biometric data: Passphrase that will be hashed to a 256-bit key.

Used for integer parameter "BiometricEncryption". The biometric data to be encrypted is specified by blob parameter "BiometricData".

String parameter "BiometricPassphrase" (see SIGNDOC_SignatureParameters_setString()) must be set.

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SignatureParameters_setBlob()
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_RSA   0

Select how to encrypt the biometric data: Random session key encrypted with public RSA key.

Used for integer parameter "BiometricEncryption". The biometric data to be encrypted is specified by blob parameter "BiometricData".

Either blob parameter "BiometricKey" (see SIGNDOC_SignatureParameters_setBlob()) or string parameter "BiometricKeyPath" (see SIGNDOC_SignatureParameters_setString()) must be set.

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SignatureParameters_setBlob(), Encryption of biometric data
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICHASHLOCATION_ATTR   0

Select where to store the message digest computed over the document hash and the unencrypted biometric data: If possible, store the biometric hash as unauthenticated attribute in the PKCS #7 (or CMS) message.

Used for integer parameter "BiometricHashLocation".

For method SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS1, the biometric hash will stored in the Contents entry of the signature dictionary (see SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICHASHLOCATION_CONTENTS).

For all other methods, the biometric hash will stored as unauthenticated attribute in the PKCS #7 (or CMS) message.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICHASHLOCATION_CONTENTS   1

Select where to store the message digest computed over the document hash and the unencrypted biometric data: Store the message digest in the Contents entry of the signature dictionary.

Used for integer parameter "BiometricHashLocation".

This is what SignDoc SDK 4.1 and older did; it violates a constraint of most PDF specifications.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_ASK_IF_AMBIGUOUS   0x20

Flags for selecting certificates: ask the user to select a certificate if there is more than one matching certificate.

Used for integer parameter "SelectCertificate".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_CREATE_SELF_SIGNED   0x80

Flags for selecting certificates: offer to create a self-signed certificate (cannot be used with SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK and SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_ASK_IF_AMBIGUOUS)

Used for integer parameter "SelectCertificate".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_HARDWARE   0x02

Flags for selecting certificates: include certificates with hardware-based private keys.

Used for integer parameter "SelectCertificate".

As software-based private keys and hardware-based private keys cannot be reliably distinguished, you should always set both SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_SOFTWARE and SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_HARDWARE.

If neither SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_ASK_IF_AMBIGUOUS nor SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK is included, the certificate selection dialog will be displayed.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK   0x40

Flags for selecting certificates: never ask the user to select a certificate; exactly one certificate must match.

Used for integer parameter "SelectCertificate".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_SOFTWARE   0x01

Flags for selecting certificates: include certificates with software-based private keys.

Used for integer parameter "SelectCertificate".

As software-based private keys and hardware-based private keys cannot be reliably distinguished, you should always set both SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_SOFTWARE and SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_HARDWARE.

If neither SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_ASK_IF_AMBIGUOUS nor SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK is included, the certificate selection dialog will be displayed.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_USE_CERTIFICATE_SEED_VALUES   0x10

Flags for selecting certificates: include only certificates allowed by the PDF document's certificate seed value dictionary.

Used for integer parameter "SelectCertificate".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_AUTO   4

Horizontal alignment: Align left if the text begins with an LTR run, align right if the text begins with an RTL run.

Used for integer parameter "TextHAlignment" (see SIGNDOC_SignatureParameters_setInteger()) and for SIGNDOC_SignatureParameters_addTextItem2().

#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_CENTER   1

Horizontal alignment: Center.

Used for integer parameters "ImageHAlignment" and "TextHAlignment" (see SIGNDOC_SignatureParameters_setInteger()) and for SIGNDOC_SignatureParameters_addTextItem2().

#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_DEFAULT   (-1)

Horizontal alignment: Use integer parameter "TextHAlignment".

Used for SIGNDOC_SignatureParameters_addTextItem2().

#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_JUSTIFY   3

Horizontal alignment: Justify (align both and right, expanding white space).

Used for integer parameter "TextHAlignment" (see SIGNDOC_SignatureParameters_setInteger()) and for SIGNDOC_SignatureParameters_addTextItem2().

Note
Expanding white space is not the correct way to justify Arabic text.
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_LEFT   0

Horizontal alignment: Align left.

Used for integer parameters "ImageHAlignment" and "TextHAlignment" (see SIGNDOC_SignatureParameters_setInteger()) and for SIGNDOC_SignatureParameters_addTextItem2().

#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_RIGHT   2

Horizontal alignment: Align right.

Used for integer parameter "ImageHAlignment" and "TextHAlignment" (see SIGNDOC_SignatureParameters_setInteger()) and for SIGNDOC_SignatureParameters_addTextItem2().

#define SIGNDOC_SIGNATUREPARAMETERS_IGNORESEEDVALUES_DIGESTMETHOD   0x02

Flag for ignoring mandatory requirements specified by the signature seed value dictionary: Ignore DigestMethod (hash algorithm).

Used for integer parameter "IgnoreSeedValues".

If this flag is not set, signing will fail if a hash algorithm is requested that is not listed in the DigestMethod entry of the signature field seed value dictionary. The hash algorithnm is specified by string parameter "DetachedHashAlgorithm" (if the value of that parameter is not "default"). It can also be implied by integer parameter "Method".

If this flag is set, you can override the DigestMethod entry of the signature field seed value dictionary with string parameter "DetachedHashAlgorithm" and/or integer parameter "Method" without risking failure of signing due to a conflict with DigestMethod.

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SIGNATUREPARAMETERS_IGNORESEEDVALUES_SUBFILTER
#define SIGNDOC_SIGNATUREPARAMETERS_IGNORESEEDVALUES_SUBFILTER   0x01

Flag for ignoring mandatory requirements specified by the signature seed value dictionary: Ignore SubFilter (signing method).

Used for integer parameter "IgnoreSeedValues".

If this flag is not set signing will fail if the signing method specified by integer parameter "Method" is neither SIGNDOC_SIGNATUREPARAMETERS_METHOD_DEFAULT nor listed in the SubFilter entry of the signature field seed value dictionary.

If this flag is set, you can override the SubFilter entry of the signature field seed value dictionary with integer parameter "Method" without risking failure of signing due to a conflict between "Method" and SubFilter.

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SIGNATUREPARAMETERS_IGNORESEEDVALUES_DIGESTMETHOD
#define SIGNDOC_SIGNATUREPARAMETERS_IMAGETRANSPARENCY_BRIGHTEST   1

Transparency of signature image: Make the brightest color transparent.

If the image has an alpha channel (or if its palette contains a transparent color), the image's transparency will be used. Otherwise, white will be made transparent for truecolor images and the brightest color in the palette will be made transparent for indexed images (including grayscale images).

See also
SIGNDOC_SIGNATUREPARAMETERS_IMAGETRANSPARENCY_OPAQUE
#define SIGNDOC_SIGNATUREPARAMETERS_IMAGETRANSPARENCY_OPAQUE   0

Transparency of signature image: Make signature image opaque.

Used for integer parameter "ImageTransparency".

The signature image will be opaque unless the image has an alpha channel or transparent colors in its palette.

If the image has an alpha channel (or if its palette contains a transparent color), the image's transparency will be used no matter what value is set for "ImageTransparency".

Transparency is not supported for JPEG images and JPEG-compressed TIFF images. Signature images created from biometric data (according to the "RenderSignature" integer parameter) don't have an alpha channel.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DEFAULT   0

Signing methods: default method.

For signature parameters created by SIGNDOC_Document_createSignatureParametersForTimeStamp(), this value is treated as SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_CADES_RFC3161.

Use the method specified by the SubFilter values of the signature field seed value dictionary or, if not present, SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS7_DETACHED.

This is the recommended method unless you need an ETSI CAdES sighnature (SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_CADES_DETACHED).

Used for integer parameter "Method".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_CADES_DETACHED   5

Signing methods: ETSI CAdES detached (PAdES-BES).

Used for integer parameter "Method".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_CADES_RFC3161   6

Signing methods: ETSI CAdES RFC 3161 time stamp.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS1   1

Signing methods: PKCS #1 (RSA keys only).

Used for integer parameter "Method". Not allowed for PDF/A-2 and PDF/A-3.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS7_DETACHED   2

Signing methods: detached PKCS #7.

Used for integer parameter "Method".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS7_SHA1   3

Signing methods: PKCS #7 with SHA-1 (deprecated).

Used for integer parameter "Method".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_HASH   4

Signing methods: The signature is just a hash (TIFF only).

Used for integer parameter "Method".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_OPTIMIZE_DONT_OPTIMIZE   1

Optimization of document before signing: Don't optimize document.

Used for integer parameter "Optimize".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_OPTIMIZE_IF_POSSIBLE   2

Optimization of document before signing: Optimize the document if possible.

Optimization is possible if there is not yet any signature.

Used for integer parameter "Optimize".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_OPTIMIZE_OPTIMIZE   0

Optimization of document before signing: Optimize document before signing for the first time.

Used for integer parameter "Optimize".

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO   2

Fix appearance streams of check boxes and radio buttons for PDF/A-1 without Technical Corrigendum 2 before signing: Freeze (fix) appearances if appropriate.

Used for integer parameter "PDFAButtons".

Freeze (fix) appearances if the document claims PDF/A-1 conformance and if there are no signed signature fields.

Using SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO if the document claims to conform to PDF/A-1 and has no signed signature fields is equivalent to saving the document with SIGNDOC_DOCUMENT_SAVEFLAGS_PDFA_BUTTONS before signing.

This value should be used only if you need conformance with ISO 19005-1:2005 without Technical Corrigendum 2 (TC2), that is, if you need conformance with a standard that is no longer in force.

Note that TC2 is in force and using this value breaks conformance with TC2.

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_DONT_FREEZE, SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_DONT_FREEZE   1

Fix appearance streams of check boxes and radio buttons for PDF/A-1 without Technical Corrigendum 2 before signing: Don't freeze (fix) appearances.

Used for integer parameter "PDFAButtons".

This value should be used unless you need conformance with a standard (ISO 19005-1:2005 without Technical Corrigendum 2) that is no longer in force.

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO, SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE   0

Fix appearance streams of check boxes and radio buttons for PDF/A-1 without Technical Corrigendum 2 before signing: Freeze (fix) appearances.

Used for integer parameter "PDFAButtons".

Using SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE is equivalent to saving the document with SIGNDOC_DOCUMENT_SAVEFLAGS_PDFA_BUTTONS before signing.

This value should be used only if you need conformance with ISO 19005-1:2005 before Technical Corrigendum 2 (TC2), that is, if you need conformance with a standard that is no longer in force.

Note that TC2 is in force and using this value breaks conformance with TC2.

See also
SIGNDOC_SignatureParameters_setInteger(), SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO, SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_DONT_FREEZE
#define SIGNDOC_SIGNATUREPARAMETERS_REMOVEXFA_ALWAYS   0

Value for integer parameter "RemoveXFA": Always remove XFA.

Use this value if you intend to call SiGNDOC_Document_setField() or SiGNDOC_Document_addField() after signing. Adding the signature will fail if the document prohibits removal of XFA.

#define SIGNDOC_SIGNATUREPARAMETERS_REMOVEXFA_IF_ALLOWED   1

Value for integer parameter "RemoveXFA": Remove XFA if possible.

XFA will be removed unless the document prohibits removal of XFA. SiGNDOC_Document_addField() and SiGNDOC_Document_setField() will fail if XFA is still present after signing.

#define SIGNDOC_SIGNATUREPARAMETERS_REMOVEXFA_NEVER   2

Value for integer parameter "RemoveXFA": Do not remove XFA.

SiGNDOC_Document_addField() and SiGNDOC_Document_setField() will fail if XFA is still present after signing.

#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_ANTIALIAS   0x04

Flags for rendering the signature: use gray levels for antialiasing.

Used for integer parameter "RenderSignature".

SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_BW, SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_GRAY, and SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_ANTIALIAS are mutually exclusive.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_BW   0x01

Flags for rendering the signature: black and white.

Used for integer parameter "RenderSignature".

SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_BW, SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_GRAY, and SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_ANTIALIAS are mutually exclusive.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_GRAY   0x02

Flags for rendering the signature: use gray levels computed from pressure.

Used for integer parameter "RenderSignature".

SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_BW, SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_GRAY, and SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_ANTIALIAS are mutually exclusive.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_LIMIT_SIZE   0x08

Flags for rendering the signature: Limit the size of the rendered signature to the size of the captured signature.

Used for integer parameter "RenderSignature".

If this flag is set, the rendered signature won't be magnified. However, it may be shrunk to fit the signature field.

Set this flag only if you are sure that the capture resolution stored in the blob passed to blob parameter "BiometricData" is accurate.

See also
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTGROUP_MASTER   0

Text groups: Master group.

One font size is used per group and is chosen such that the text fits horizontally. The maximum font size is specified by length parameter "FontSize". The font size of the slave group cannot be greater than the font size of the master group, that is, long text in the slave group won't reduce the font size of the master group.

There must be at least one master text item if there is a slave text item.

See also
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_addTextItem2(), SIGNDOC_SignatureParameters_setLength()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTGROUP_SLAVE   1

Text groups: Slave group.

See also
SIGNDOC_SIGNATUREPARAMETERS_TEXTGROUP_MASTER
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_DEFAULT_LTR   0x4000

Paragraph direction: Choose direction automatically, default to LTR.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 0 (LTR) for paragraphs having no strong directional character.

See also
SIGNDOC_SignatureParameters_addTextItem2(), SIGNDOC_SignatureParameters_setTextItemDirection(), SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_DEFAULT_RTL, SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_LTR, SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_RTL
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_DEFAULT_RTL   0x8000

Paragraph direction: Choose direction automatically, default to RTL.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 1 (RTL) for paragraphs having no strong directional character.

See also
SIGNDOC_SignatureParameters_addTextItem2(), SIGNDOC_SignatureParameters_setTextItemDirection(), SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_DEFAULT_LTR, SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_LTR, SIGNDOC_SIGNATUREPARAMETERS_TEXTITEMDIRECTION_RTL
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_ABOVE   4

Position of the text block w.r.t. to the image: Text is put above the image.

Used for integer parameter "TextPosition" (see SIGNDOC_SignatureParameters_setInteger()).

#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_BELOW   1

Position of the text block w.r.t. to the image: Text is put below the image.

Used for integer parameter "TextPosition" (see SIGNDOC_SignatureParameters_setInteger()).

#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_LEFT_OF   5

Position of the text block w.r.t. to the image: Text is put on the left of the image.

Used for integer parameter "TextPosition" (see SIGNDOC_SignatureParameters_setInteger()).

#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_OVERLAY   0

Position of the text block w.r.t. to the image: Text and image are independent and overlap (text painted on image).

Used for integer parameter "TextPosition" (see SIGNDOC_SignatureParameters_setInteger()).

#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_RIGHT_OF   3

Position of the text block w.r.t. to the image: Text is put on the right of the image.

Used for integer parameter "TextPosition" (see SIGNDOC_SignatureParameters_setInteger()).

#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_UNDERLAY   2

Position of the text block w.r.t. to the image: Text and image are independent and overlap (image painted on text).

Used for integer parameter "TextPosition" (see SIGNDOC_SignatureParameters_setInteger()).

#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_BLOB   8
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_COLOR   5
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_INTEGER   2
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_LENGTH   9
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_STRING   4
#define SIGNDOC_SIGNATUREPARAMETERS_TYPE_UNDEFINED   0

Return value of SIGNDOC_SignatureParameters_getType(): The specified parameter is not defined.

#define SIGNDOC_SIGNATUREPARAMETERS_VALIGNMENT_BOTTOM   2

Vertical alignment: bottom.

Used for integer parameters "ImageVAlignment" and "TextVAlignment" (see SIGNDOC_SignatureParameters_setInteger()).

#define SIGNDOC_SIGNATUREPARAMETERS_VALIGNMENT_CENTER   1

Vertical alignment: center.

Used for integer parameters "ImageVAlignment" and "TextVAlignment" (see SIGNDOC_SignatureParameters_setInteger()).

#define SIGNDOC_SIGNATUREPARAMETERS_VALIGNMENT_TOP   0

Vertical alignment: top.

Used for integer parameters "ImageVAlignment" and "TextVAlignment" (see SIGNDOC_SignatureParameters_setInteger()).

#define SIGNDOC_SIGNATUREPARAMETERS_VALUETYPE_ABS   0

Indicate how measurements are specified: aValue is the value to be used (units of document coordinates).

See Coordinate Systems.

See also
SIGNDOC_SignatureParameters_setLength()
#define SIGNDOC_SIGNATUREPARAMETERS_VALUETYPE_FIELD_HEIGHT   1

Indicate how measurements are specified: Multiply aValue by the field height.

See also
SIGNDOC_SignatureParameters_setLength()
#define SIGNDOC_SIGNATUREPARAMETERS_VALUETYPE_FIELD_WIDTH   2

Indicate how measurements are specified: Multiply aValue by the field width.

See also
SIGNDOC_SignatureParameters_setLength()
#define SIGNDOC_TIMESTAMPER_STAMPFLAGS_DONT_CHECK_REVOCATION   0x01

Flag for SIGNDOC_TimeStamper_stamp(): Do not check revocation.

Set this flag if you need only the size of the timestamp.

#define SIGNDOC_TIMESTAMPER_STAMPFLAGS_DONT_HASH   0x02

Flag for SIGNDOC_TimeStamper_stamp(): Do not hash the document message digest again.

#define SIGNDOC_TIMESTAMPER_STAMPRESULT_HTTP_ERROR   6

Return value of SIGNDOC_TimeStamper_stamp(): Some failure at the HTTP layer.

#define SIGNDOC_TIMESTAMPER_STAMPRESULT_INVALID_INPUT   1

Return value of SIGNDOC_TimeStamper_stamp(): Invalid argument or invalid time-stamp request.

#define SIGNDOC_TIMESTAMPER_STAMPRESULT_INVALID_RESPONSE   8

Return value of SIGNDOC_TimeStamper_stamp(): The response from the server is invalid.

#define SIGNDOC_TIMESTAMPER_STAMPRESULT_OK   0

Return value of SIGNDOC_TimeStamper_stamp(): Success.

#define SIGNDOC_TIMESTAMPER_STAMPRESULT_SERVER_ERROR   7

Return value of SIGNDOC_TimeStamper_stamp(): The server failed to create the time stamp (according to PKIStatus).

#define SIGNDOC_TIMESTAMPER_STAMPRESULT_SSL_ERROR   5

Return value of SIGNDOC_TimeStamper_stamp(): Some failure at the SSL/TLS layer.

#define SIGNDOC_TIMESTAMPER_STAMPRESULT_STOPPED   3

Return value of SIGNDOC_TimeStamper_stamp(): Transaction interrupted by SIGNDOC_TimeStamper_stop().

#define SIGNDOC_TIMESTAMPER_STAMPRESULT_TCP_ERROR   4

Return value of SIGNDOC_TimeStamper_stamp(): Some failure at the TCP/IP layer.

#define SIGNDOC_TIMESTAMPER_STAMPRESULT_TIMEOUT   2

Return value of SIGNDOC_TimeStamper_stamp(): Timeout.

#define SIGNDOC_TRUE   1

Boolean value: true.

See also
SIGNDOC_FALSE, SIGNDOC_Boolean
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED   1
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED_WITH_BIO   2

Value for integer parameter "CertificateChainVerificationPolicy": Accept self-signed certificates if biometric data is present.

If the signing certificate is not self-signed or if there is no biometric data, the certificate must chain up to a trusted root certificate.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_DONT_VERIFY, SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED, SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED_WITH_RSA_BIO, SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_REQUIRE_TRUSTED_ROOT
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED_WITH_RSA_BIO   3

Value for integer parameter "CertificateChainVerificationPolicy": Accept self-signed certificates if asymmetrically encrypted biometric data is present.

If the signing certificate is not self-signed or if there is no biometric data or if the biometric data is not encrypted with RSA, the certificate must chain up to a trusted root certificate.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_DONT_VERIFY, SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED, SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED_WITH_BIO, SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_REQUIRE_TRUSTED_ROOT
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_REQUIRE_TRUSTED_ROOT   4
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_DONT_CHECK   0

Values for integer parameter "CertificateRevocationVerificationPolicy": Don't verify revocation of certificates.

Always pretend that certificates have not been revoked.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_OFFLINE, SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_ONLINE
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_OFFLINE   1

Values for integer parameter "CertificateRevocationVerificationPolicy": Check revocation, assume that certificates are not revoked if the revocation server is offline.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_DONT_CHECK, SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_ONLINE
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_ONLINE   2

Values for integer parameter "CertificateRevocationVerificationPolicy": Check revocation, assume that certificates are revoked if the revocation server is offline.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_DONT_CHECK, SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_OFFLINE
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_CRL_FIRST   0x100
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ENFORCE_NEXT_UPDATE   0x10

Flag for integer parameter "VerificationFlags": Enforce nextUpdate of CRLs and OCSP responses.

If this flag is set, CRLs and OCSP responses whose nextUpdate time is before the signing time or verification time (depending on the verification model) will be ignored. See also integer parameter "ComputeOfflineNextUpdate".

This flag is ignored unless SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_CHECK_REVOCATION is set. If this flag is set, there are more cases in which an OCSP or CRL server needs to be contacted.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_CHECK_REVOCATION, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_CRL_FIRST, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ENFORCE_OCSP_SIGNER, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_IGNORE_NO_REVOCATION, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_NO_OCSP_NONCE, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_OFFLINE, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ONLINE, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_USE_CRL_ONLY, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_USE_OCSP_ONLY
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_IGNORE_NO_REVOCATION   0x200
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_NO_OCSP_NONCE   0x80
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_CHAIN   1

Value for integer parameter "VerificationModel": Chain model.

Each certificate in the chain (except for the root certificate) must have been issued during the validity time period of its issuer certificate. The signing certificate must be valid at signing time.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MINIMAL, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MODIFIED_SHELL, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_SHELL
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MINIMAL   0

Value for integer parameter "VerificationModel": Minimal.

All certificates in the chain must be valid at verification time and the signing certificate must be valid at signing time.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_CHAIN, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MODIFIED_SHELL, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_SHELL
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MODIFIED_SHELL   2

Value for integer parameter "VerificationModel": Modified shell model (also known as hybrid model).

All certificates in the chain must be valid at signing time.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_CHAIN, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MINIMAL, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MODIFIED_SHELL
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_SHELL   3

Value for integer parameter "VerificationModel": Shell model.

All certificates in the chain must be valid at verification time and the signing certificate must be valid at signing time.

The shell model is not really suitable for digital signatures as it allows for repudiation of signatures. An exception is LTV (long term validity) validation as signatures are validated at times in the past established by document time stamps.

See also
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_CHAIN, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MINIMAL, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MODIFIED_SHELL
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_BROKEN_CHAIN   1

Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Chain broken.

No chain leading to a self-signed certificate could be built.

#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_CRITICAL_EXTENSION   3

Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): A certificate has an unknown critical extension.

#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_ERROR   7
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_INVALID   6
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_NOT_TIME_VALID   4

Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): A certificate is not yet valid or is expired.

#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_OK   0
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_PATH_LENGTH   5

Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Path length constraint not satisfied.

#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_UNTRUSTED_ROOT   2

Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Untrusted root certificate.

Some operating systems (OS X, iOS) do not let us distinguish between SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_BROKEN_CHAIN and SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_UNTRUSTED_ROOT; for those, SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_UNTRUSTED_ROOT will be returned for a broken certificate chain.

#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_ERROR   4

Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): Error.

#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_NOT_CHECKED   1

Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): Revocation not checked.

#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_OFFLINE   2

Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): Revocation server is offline.

#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_OK   0

Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): No certificate revoked.

#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_REVOKED   3

Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): At least one certificate has been revoked.

#define SIGNDOC_VERIFICATIONRESULT_MODIFICATIONSTATE_ALLOWED   1

Modification state of the document for a certain signature: All the modifications are allowed by the signature.

See also
SIGNDOC_VerificationResult_getModificationState()
#define SIGNDOC_VERIFICATIONRESULT_MODIFICATIONSTATE_PROHIBITED   2

Modification state of the document for a certain signature: There are modifications that are not allowed by the signature.

See also
SIGNDOC_VerificationResult_getModificationState()
#define SIGNDOC_VERIFICATIONRESULT_MODIFICATIONSTATE_UNMODIFIED   0

Modification state of the document for a certain signature: The document has not been modified since the signature was added.

See also
SIGNDOC_VerificationResult_getModificationState()
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_DOCUMENT_EXTENDED   1

State of a signature: No error, signature and document verified, document modified by adding data to the signed document.

See also
SIGNDOC_VerificationResult_getState()
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_DOCUMENT_MODIFIED   2

State of a signature: Document modified (possibly forged).

See also
SIGNDOC_VerificationResult_getState()
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_EMPTY   5

State of a signature: Signature field without signature.

See also
SIGNDOC_VerificationResult_getState()
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_INVALID_CERTIFICATE   4

State of a signature: Invalid certificate.

See also
SIGNDOC_VerificationResult_getState()
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_UNMODIFIED   0

State of a signature: No error, signature and document verified.

See also
SIGNDOC_VerificationResult_getState()
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_UNSUPPORTED_SIGNATURE   3

State of a signature: Unsupported signature method.

See also
SIGNDOC_VerificationResult_getState()
#define SIGNDOC_VERIFICATIONRESULT_TIMESTAMPSTATE_INVALID   2

State of the RFC 3161 time stamp: An RFC 3161 time stamp is present but invalid.

See also
SIGNDOC_VerificationResult_getTimeStampState()
#define SIGNDOC_VERIFICATIONRESULT_TIMESTAMPSTATE_MISSING   1

State of the RFC 3161 time stamp: There is no RFC 3161 time stamp.

See also
SIGNDOC_VerificationResult_getTimeStampState()
#define SIGNDOC_VERIFICATIONRESULT_TIMESTAMPSTATE_VALID   0

State of the RFC 3161 time stamp: No error, an RFC 3161 time stamp is present and valid (but you have to check the certificate chain and revocation).

See also
SIGNDOC_VerificationResult_getTimeStampState()
#define SIGNDOC_WATERMARK_FLAGS_DEFAULT_LTR   0x4000

Flag for SIGNDOC_Watermark_setFlags(): Choose direction automatically, default to LTR.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 0 (LTR) for paragraphs having no strong directional character.

If none of SIGNDOC_WATERMARK_FLAGS_LTR, SIGNDOC_WATERMARK_FLAGS_RTL, SIGNDOC_WATERMARK_FLAGS_DEFAULT_LTR, and SIGNDOC_WATERMARK_FLAGS_DEFAULT_RTL is set, SIGNDOC_WATERMARK_FLAGS_LTR will be used.

At most one of SIGNDOC_WATERMARK_FLAGS_LTR, SIGNDOC_WATERMARK_FLAGS_RTL, SIGNDOC_WATERMARK_FLAGS_DEFAULT_LTR, and SIGNDOC_WATERMARK_FLAGS_DEFAULT_RTL can be set.

#define SIGNDOC_WATERMARK_FLAGS_DEFAULT_RTL   0x8000

Flag for SIGNDOC_Watermark_setFlags(): Choose direction automatically, default to RTL.

The base direction of each paragraph (BiDi paragraph level) will depend on the first strong directional character in the paragraph.

The paragraph level will be 1 (RTL) for paragraphs having no strong directional character.

If none of SIGNDOC_WATERMARK_FLAGS_LTR, SIGNDOC_WATERMARK_FLAGS_RTL, SIGNDOC_WATERMARK_FLAGS_DEFAULT_LTR, and SIGNDOC_WATERMARK_FLAGS_DEFAULT_RTL is set, SIGNDOC_WATERMARK_FLAGS_LTR will be used.

At most one of SIGNDOC_WATERMARK_FLAGS_LTR, SIGNDOC_WATERMARK_FLAGS_RTL, SIGNDOC_WATERMARK_FLAGS_DEFAULT_LTR, and SIGNDOC_WATERMARK_FLAGS_DEFAULT_RTL can be set.

#define SIGNDOC_WATERMARK_HALIGNMENT_CENTER   1

Horizontal alignment: Center.

#define SIGNDOC_WATERMARK_HALIGNMENT_LEFT   0

Horizontal alignment: Align left.

#define SIGNDOC_WATERMARK_HALIGNMENT_RIGHT   2

Horizontal alignment: Align right.

#define SIGNDOC_WATERMARK_JUSTIFICATION_CENTER   1

Justification of multi-line text: center.

#define SIGNDOC_WATERMARK_JUSTIFICATION_LEFT   0

Justification of multi-line text: left.

#define SIGNDOC_WATERMARK_JUSTIFICATION_RIGHT   2

Justification of multi-line text: right.

#define SIGNDOC_WATERMARK_LOCATION_OVERLAY   0

Location of watermark: Watermark appears on top of page.

#define SIGNDOC_WATERMARK_LOCATION_UNDERLAY   1

Location of watermark: Watermark appears behind page.

#define SIGNDOC_WATERMARK_VALIGNMENT_BOTTOM   2

Vertical alignment: Align bottom.

#define SIGNDOC_WATERMARK_VALIGNMENT_CENTER   1

Vertical alignment: Center.

#define SIGNDOC_WATERMARK_VALIGNMENT_TOP   0

Vertical alignment: Align top.

Typedef Documentation

typedef int SIGNDOC_Boolean

Type for boolean values.

On input, any non-zero value will be treated like SIGNDOC_TRUE, but usage of SIGNDOC_TRUE is recommended.

See also
SIGNDOC_FALSE, SIGNDOC_TRUE
typedef void( * SIGNDOC_UserInputStream_close) (struct SIGNDOC_Exception **aEx, void *aClosure)

SIGNDOC_UserInputStream callback implementing close().

typedef int( * SIGNDOC_UserInputStream_getAvailable) (struct SIGNDOC_Exception **aEx, void *aClosure)

SIGNDOC_UserInputStream callback implementing getAvailable().

typedef int( * SIGNDOC_UserInputStream_read) (struct SIGNDOC_Exception **aEx, void *aClosure, void *aDst, int aLen)

SIGNDOC_UserInputStream callback implementing read().

typedef void( * SIGNDOC_UserInputStream_seek) (struct SIGNDOC_Exception **aEx, void *aClosure, int aPos)

SIGNDOC_UserInputStream callback implementing seek().

typedef int( * SIGNDOC_UserInputStream_tell) (struct SIGNDOC_Exception **aEx, const void *aClosure)

SIGNDOC_UserInputStream callback implementing tell().

typedef void( * SIGNDOC_UserOutputStream_close) (struct SIGNDOC_Exception **aEx, void *aClosure)

SIGNDOC_UserOutputStream callback implementing close().

typedef void( * SIGNDOC_UserOutputStream_flush) (struct SIGNDOC_Exception **aEx, void *aClosure)

SIGNDOC_UserOutputStream callback implementing flush().

typedef void( * SIGNDOC_UserOutputStream_seek) (struct SIGNDOC_Exception **aEx, void *aClosure, int aPos)

SIGNDOC_UserOutputStream callback implementing seek().

typedef int( * SIGNDOC_UserOutputStream_tell) (struct SIGNDOC_Exception **aEx, const void *aClosure)

SIGNDOC_UserOutputStream callback implementing tell().

typedef void( * SIGNDOC_UserOutputStream_write) (struct SIGNDOC_Exception **aEx, void *aClosure, const void *aSrc, int aLen)

SIGNDOC_UserOutputStream callback implementing write().

Function Documentation

void* SIGNDOC_alloc ( struct SIGNDOC_Exception **  aEx,
size_t  aSize 
)

Allocate a block of memory.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aSizeThe size in octets.
Returns
A pointer to the block of memory. The block of memory must be freed with SIGNDOC_free().
See also
SIGNDOC_free()
void SIGNDOC_Document_splitEscapeSequences ( struct SIGNDOC_Exception **  aEx,
const char *  aInput,
struct SIGNDOC_StringArray aOutput 
)

Split a string obtained from a PDF text string into escape sequences and text segments.

You don't need to call this function unless flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aInputA pointer to the null-terminated input string (UTF-8 or ISO 8859-1).
[in,out]aOutputThe escape sequences and text segments will be stored here. The escape characters are not removed from escape sequences.
See also
SIGNDOC_Document_withoutEscapeSequences(), SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES
char* SIGNDOC_Document_withEscapeSequence ( struct SIGNDOC_Exception **  aEx,
const char *  aText,
const char *  aLang 
)

Prepend an escape sequence for specifying the natural language in a text string.

This function throws an exception with code SIGNDOC_EXCEPTION_TYPE_INVALID_ARGUMENT if aLang is invalid.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aTextA pointer to the null-terminated input string (UTF-8 or ISO 8859-1).
[in]aLangA pointer to a null-terminated language identifier (an RFC3066 language tag with two-character language code and optional two-character country code). Only the language and the optional country will be used, the dash separating them will be removed. Example: "en-US" will prepend ESC "enUS" ESC.
Returns
A pointer to a copy of aText with an escape sequence prepended. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Document_withoutEscapeSequences(), SIGNDOC_free()
char* SIGNDOC_Document_withoutEscapeSequences ( struct SIGNDOC_Exception **  aEx,
const char *  aInput 
)

Remove escape sequences specifying the natural language in text strings.

You don't need to call this function unless flag SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES is set.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aInputA pointer to the null-terminated input string (UTF-8 or ISO 8859-1).
Returns
A pointer to a copy of aInput with escape sequences removed. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_Document_splitEscapeSequences(), SIGNDOC_Document_withEscapeSequence(), SIGNDOC_free(), SIGNDOC_DOCUMENT_FLAGS_KEEP_ESCAPE_SEQUENCES
void SIGNDOC_FindTextOccurrence_getBoundingBoxes ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_FindTextOccurrence aObj,
int  aPage,
unsigned  aFlags,
struct SIGNDOC_RectArray aOutput 
)

Get bounding boxes for the glyphs of a SIGNDOC_FindTextOccurrence object.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_FindTextOccurrence object.
[in]aPageThe 1-based page number.
[in]aFlagsFlags controlling the behavior of this function, see SIGNDOC_FINDTEXTOCCURRENCE_GETBOUNDINGBOXESFLAGS_SINGLE, SIGNDOC_FINDTEXTOCCURRENCE_GETBOUNDINGBOXESFLAGS_INDIVIDUAL, and SIGNDOC_FINDTEXTOCCURRENCE_GETBOUNDINGBOXESFLAGS_LOGICAL. Exactly one of these flags must be set.
[in,out]aOutputThe bounding boxes will be stored here.
void SIGNDOC_free ( void *  aPtr)

Free a block of memory.

Parameters
[in]aPtrA pointer to the block of memory to be freed.
See also
SIGNDOC_alloc(), SIGNDOC_strdup()
void SIGNDOC_logLine ( int  aLevel,
const char *  aLine 
)

Log a line.

Parameters
[in]aLevelThe logging level, 1 through 5. The line will only be logged if this logging level is smaller or equal to the configured maximum logging level.
[in]aLineThe line to be logged. Any number of trailing newline characters is ignored. The behavior is not defined for embedded newline characters.
See also
SIGNDOC_DocumentLoader_initLogging()
char* SIGNDOC_recodeStringRelaxed ( struct SIGNDOC_Exception **  aEx,
int  aInputEncoding,
const char *  aInput,
int  aOutputEncoding 
)

Convert a string from one encoding to another encoding.

An exception will be thrown if the input string is not correctly encoded. Any character that cannot be respresented by aOutputEncoding will be converted to '?'.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aInputEncodingThe encoding of aInput (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aInputA pointer to the null-terminated string to be converted.
[in]aOutputEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
Returns
A pointer to the converted string. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_free(), SIGNDOC_recodeStringStrict()
char* SIGNDOC_recodeStringStrict ( struct SIGNDOC_Exception **  aEx,
int  aInputEncoding,
const char *  aInput,
int  aOutputEncoding 
)

Convert a string from one encoding to another encoding.

An exception will be thrown if the input string is not correctly encoded or if any character of the string cannot be encoded according to aOujtputEncoding.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aInputEncodingThe encoding of aInput (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
[in]aInputA pointer to the null-terminated string to be converted.
[in]aOutputEncodingThe encoding to be used for the return value (SIGNDOC_ENCODING_NATIVE, SIGNDOC_ENCODING_UTF_8, or SIGNDOC_ENCODING_LATIN_1).
Returns
A pointer to the converted string. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_free(), SIGNDOC_recodeStringRelaxed()
SIGNDOC_Boolean SIGNDOC_Signature_getChange ( struct SIGNDOC_Exception **  aEx,
const struct SIGNDOC_Signature aObj,
int  aIndex,
struct SIGNDOC_Change **  aOutput 
)

Get a SIGNDOC_Change object for a change.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Signature object.
[in]aIndexThe zero-based index of the change.
[out]aOutputA pointer to a new SIGNDOC_Signature object or NULL will be stored here. The caller is responsible for destroying that object.
See also
SIGNDOC_Signature_getChangeCount()
void SIGNDOC_SignatureData_setErrorMessage ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_SignatureData aObj,
int  aEncoding,
const char *  aMessage 
)

Set the error message.

int SIGNDOC_Source_fetch ( struct SIGNDOC_Exception **  aEx,
struct SIGNDOC_Source aObj,
const void **  aPtr,
int  aMaxSize 
)

Fetch data from a SIGNDOC_Source.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aObjA pointer to the SIGNDOC_Source object.
[out]aPtrA pointer to the first byte will be stored here.
[in]aMaxSizeFetch up to this many bytes. Must be positive.
Returns
0 if no more data is available, otherwise the number of bytes pointed to by the pointer returned in aPtr. The return value is always less than or equal to aMaxSize.
char* SIGNDOC_strdup ( struct SIGNDOC_Exception **  aEx,
const char *  aStr 
)

Allocate a block of memory initialized with a null-terminated string.

Parameters
[out]aExAny exception will be returned in the object pointed to by this parameter.
[in]aStrA pointer to the null-terminated string to be copied.
Returns
A pointer to the copied string. The string must be freed with SIGNDOC_free().
See also
SIGNDOC_free(), SIGNDOC_recodeStringRelaxed(), SIGNDOC_recodeStringStrict()