Classes | Defines | Typedefs | Functions

SignDocSDK-c.h File Reference

SignDoc SDK C API. More...

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

Go to the source code of this file.

Classes

class  SIGNDOC_Point
 A point (page coordinates or canvas coordinates). More...
class  SIGNDOC_Rect
 A rectangle (page coordinates). More...
class  SIGNDOC_CharacterPosition
 Position of a character. More...
class  SIGNDOC_FindTextPosition
 Text position. More...
class  SIGNDOC_RenderOutput
 Output of SIGNDOC_Document_renderPageAsImage(). More...

Defines

#define SDCAPI
#define SIGNDOC_FALSE   0
 Boolean value: false.
#define SIGNDOC_TRUE   1
 Boolean value: true.
#define SIGNDOC_EXCEPTION_TYPE_BAD_ALLOC   1
 Exception class: std::bad_alloc.
#define SIGNDOC_EXCEPTION_TYPE_PDF   2
 Exception class: de::softpro::sppdf::Exception.
#define SIGNDOC_EXCEPTION_TYPE_STL   3
 Exception class: std::exception.
#define SIGNDOC_EXCEPTION_TYPE_GENERIC   4
 Exception class: everything else.
#define SIGNDOC_EXCEPTION_TYPE_SPOOC_GENERIC   5
 Exception class: de::softpro::spooc::Exception.
#define SIGNDOC_EXCEPTION_TYPE_SPOOC_ENCODING_ERROR   6
 Exception class: de::softpro::spooc::EncodingError.
#define SIGNDOC_EXCEPTION_TYPE_SPOOC_IO   7
 Exception class: de::softpro::spooc::IOError.
#define SIGNDOC_ANNOTATION_TYPE_UNKNOWN   0
 Annotation type: Unknown annotation type.
#define SIGNDOC_ANNOTATION_TYPE_LINE   1
 Annotation type: Line annotation.
#define SIGNDOC_ANNOTATION_TYPE_SCRIBBLE   2
 Annotation type: Scribble annotation (freehand scribble).
#define SIGNDOC_ANNOTATION_TYPE_FREETEXT   3
 Annotation type: FreeText annotation.
#define SIGNDOC_ANNOTATION_LINEENDING_UNKNOWN   0
 Line ending style: Unknown line ending style.
#define SIGNDOC_ANNOTATION_LINEENDING_NONE   1
 Line ending style: No line ending.
#define SIGNDOC_ANNOTATION_LINEENDING_ARROW   2
 Line ending style: Two short lines forming an arrowhead.
#define SIGNDOC_ANNOTATION_HALIGNMENT_LEFT   0
 Horizontal alignment: left.
#define SIGNDOC_ANNOTATION_HALIGNMENT_CENTER   1
 Horizontal alignment: center.
#define SIGNDOC_ANNOTATION_HALIGNMENT_RIGHT   2
 Horizontal alignment: right.
#define SIGNDOC_ANNOTATION_RETURNCODE_OK   0
 Return code: Parameter set successfully.
#define SIGNDOC_ANNOTATION_RETURNCODE_NOT_SUPPORTED   1
 Return code: Setting the parameter is not supported.
#define SIGNDOC_ANNOTATION_RETURNCODE_INVALID_VALUE   2
 Return code: The value for the parameter is invalid.
#define SIGNDOC_ANNOTATION_RETURNCODE_NOT_AVAILABLE   3
 Return code: The value is not available.
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_UNKNOWN   0
 Document type: For SIGNDOC_DocumentLoader_ping().
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_PDF   1
 Document type: PDF document.
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_TIFF   2
 Document type: TIFF document.
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_OTHER   3
 Document type: Other document.
#define SIGNDOC_DOCUMENT_DOCUMENTTYPE_FDF   4
 Document type: FDF document.
#define SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL   0x01
 Flags modifying the behavior of SIGNDOC_Document_saveToFile() and SIGNDOC_Document_saveToStream(): Save incrementally (PDF).
#define SIGNDOC_DOCUMENT_SAVEFLAGS_REMOVE_UNUSED   0x02
 Flags modifying the behavior of SIGNDOC_Document_saveToFile() and SIGNDOC_Document_saveToStream(): Remove unused objects (PDF).
#define SIGNDOC_DOCUMENT_SAVEFLAGS_LINEARIZED   0x04
 Flags modifying the behavior of SIGNDOC_Document_saveToFile() and SIGNDOC_Document_saveToStream(): Linearize the document (PDF).
#define SIGNDOC_DOCUMENT_SAVEFLAGS_PDF_1_4   0x08
 Flags modifying the behavior of SIGNDOC_Document_saveToFile() and SIGNDOC_Document_saveToStream(): Do not use features introduced after PDF 1.4 for saving the document.
#define SIGNDOC_DOCUMENT_SAVEFLAGS_PDFA_BUTTONS   0x10
 Flags modifying the behavior of SIGNDOC_Document_saveToFile() and SIGNDOC_Document_saveToStream(): Fix appearance streams of check boxes and radio buttons for PDF/A-1 documents.
#define SIGNDOC_DOCUMENT_COPYTOSTREAMFLAGS_UNSAVED   0x01
 Flag for SIGNDOC_Document_copyToStream(): Include unsaved changes.
#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.
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_WARN   0x02
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Warn if no suitable font is found.
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_IGNORE   0x04
 Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Ignore font problems.
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_MOVE   0x08
 Flags modifying the behavior of SIGNDOC_Document_setField(): Move or resize field.
#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.
#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.
#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.
#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.
#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.
#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_INCLUDE_SIGNATURE_UNSIGNED   0x01
 Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Include unsigned signature fields.
#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_HIDDEN   0x04
 Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Include hidden and invisible widgets.
#define SIGNDOC_DOCUMENT_FLATTENFIELDSFLAGS_KEEP_STRUCTURE   0x08
 Flags modifying the behavior of SIGNDOC_Document_flattenFields(): Do not modify logical structure.
#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_HSPACE   0x0001
 Flags modifying the behavior of SIGNDOC_Document_findText(): Ignore horizontal whitespace (may be required).
#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_HYPHENATION   0x0002
 Flags modifying the behavior of SIGNDOC_Document_findText(): Ignore hyphenation (not yet implemented).
#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_SEQUENCE   0x0004
 Flags modifying the behavior of SIGNDOC_Document_findText(): Use character positions instead of sequence (can be expensive, not yet implemented).
#define SIGNDOC_DOCUMENT_EXPORTFLAGS_TOP   0x01
 Flags modifying the behavior of SIGNDOC_Document_exportFields() and SIGNDOC_Document_exportProperties(): Include XML declaration and schema for top-level element.
#define SIGNDOC_DOCUMENT_IMPORTFLAGS_ATOMIC   0x01
 Flags modifying the behavior of SIGNDOC_Document_importProperties(): Modify all properties from XML or none (on error).
#define SIGNDOC_DOCUMENT_IMPORTIMAGEFLAGS_KEEP_ASPECT_RATIO   0x01
 Flags modifying the behavior of SIGNDOC_Document_addImageFromBlob(), SIGNDOC_Document_addImageFromFile(), SIGNDOC_Document_importPageFromImageBlob(), and SIGNDOC_Document_importPageFromImageFile(): Keep aspect ratio of image, center image on white background.
#define SIGNDOC_DOCUMENT_IMPORTIMAGEFLAGS_BRIGHTEST_TRANSPARENT   0x02
 Flags modifying the behavior of SIGNDOC_Document_addImageFromBlob(), SIGNDOC_Document_addImageFromFile(), SIGNDOC_Document_importPageFromImageBlob(), and SIGNDOC_Document_importPageFromImageFile(): Make the brightest color transparent.
#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_RETURNCODE_OK   0
 Return code: No error.
#define SIGNDOC_DOCUMENT_RETURNCODE_INVALID_ARGUMENT   1
 Return code: Invalid argument.
#define SIGNDOC_DOCUMENT_RETURNCODE_FIELD_NOT_FOUND   2
 Return code: Field not found (or not a signature field).
#define SIGNDOC_DOCUMENT_RETURNCODE_INVALID_PROFILE   3
 Return code: Profile unknown or not applicable.
#define SIGNDOC_DOCUMENT_RETURNCODE_INVALID_IMAGE   4
 Return code: Invalid image (e.g., unsupported format).
#define SIGNDOC_DOCUMENT_RETURNCODE_TYPE_MISMATCH   5
 Return code: Field type or property type mismatch.
#define SIGNDOC_DOCUMENT_RETURNCODE_FONT_NOT_FOUND   6
 Return code: The requested font could not be found or does not contain all required characters.
#define SIGNDOC_DOCUMENT_RETURNCODE_NO_DATABLOCK   7
 Return code: No datablock found (obsolete).
#define SIGNDOC_DOCUMENT_RETURNCODE_NOT_SUPPORTED   8
 Return code: Operation not supported.
#define SIGNDOC_DOCUMENT_RETURNCODE_IO_ERROR   9
 Return code: I/O error.
#define SIGNDOC_DOCUMENT_RETURNCODE_NOT_VERIFIED   10
 Return code: (used by SIGNDOC_VerificationResult)
#define SIGNDOC_DOCUMENT_RETURNCODE_PROPERTY_NOT_FOUND   11
 Return code: Property not found.
#define SIGNDOC_DOCUMENT_RETURNCODE_PAGE_NOT_FOUND   12
 Return code: Page not found (invalid page number).
#define SIGNDOC_DOCUMENT_RETURNCODE_WRONG_COLLECTION   13
 Return code: Property accessed via wrong collection.
#define SIGNDOC_DOCUMENT_RETURNCODE_FIELD_EXISTS   14
 Return code: Field already exists.
#define SIGNDOC_DOCUMENT_RETURNCODE_LICENSE_ERROR   15
 Return code: License initialization failed or license check failed.
#define SIGNDOC_DOCUMENT_RETURNCODE_UNEXPECTED_ERROR   16
 Return code: Unexpected error.
#define SIGNDOC_DOCUMENT_RETURNCODE_CANCELLED   17
 Return code: Certificate dialog cancelled by user.
#define SIGNDOC_DOCUMENT_RETURNCODE_NO_BIOMETRIC_DATA   18
 Return code: (used by SIGNDOC_VerificationResult)
#define SIGNDOC_DOCUMENT_RETURNCODE_PARAMETER_NOT_SET   19
 Return code: (Java only)
#define SIGNDOC_DOCUMENT_RETURNCODE_FIELD_NOT_SIGNED   20
 Return code: Field not signed, for SIGNDOC_Document_copyAsSignedToStream().
#define SIGNDOC_DOCUMENT_RETURNCODE_INVALID_SIGNATURE   21
 Return code: Signature is not valid, for SIGNDOC_Document_copyAsSignedToStream().
#define SIGNDOC_DOCUMENT_RETURNCODE_ANNOTATION_NOT_FOUND   22
 Return code: Annotation not found, for SIGNDOC_Document_getAnnotation().
#define SIGNDOC_DOCUMENT_RETURNCODE_ATTACHMENT_NOT_FOUND   23
 Return code: Attachment not found.
#define SIGNDOC_DOCUMENT_RETURNCODE_ATTACHMENT_EXISTS   24
 Return code: Attachment already exists.
#define SIGNDOC_DOCUMENT_RETURNCODE_NO_CERTIFICATE   25
 Return code: No (matching) certificate found and SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_CREATE_SELF_SIGNED is not specified.
#define SIGNDOC_DOCUMENT_RETURNCODE_AMBIGUOUS_CERTIFICATE   26
 Return code: More than one matching certificate found and SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK is specified.
#define SIGNDOC_DOCUMENT_RETURNCODE_NOT_ALLOWED   27
 Return code: Operation not allowed due to document being signed or conforming to PDF/A or having logical structure.
#define SIGNDOC_DOCUMENT_CHECKATTACHMENTRESULT_MATCH   0
 Result of SIGNDOC_Document_checkAttachment(): The attachment matches its checksum.
#define SIGNDOC_DOCUMENT_CHECKATTACHMENTRESULT_NO_CHECKSUM   1
 Result of SIGNDOC_Document_checkAttachment(): The attachment does not have a checksum.
#define SIGNDOC_DOCUMENT_CHECKATTACHMENTRESULT_MISMATCH   2
 Result of SIGNDOC_Document_checkAttachment(): The attachment does not match its checksum.
#define SIGNDOC_DOCUMENT_HALIGNMENT_LEFT   0
 Horizontal alignment for SIGNDOC_Document_addTextRect(): left.
#define SIGNDOC_DOCUMENT_HALIGNMENT_CENTER   1
 Horizontal alignment for SIGNDOC_Document_addTextRect(): center.
#define SIGNDOC_DOCUMENT_HALIGNMENT_RIGHT   2
 Horizontal alignment for SIGNDOC_Document_addTextRect(): right.
#define SIGNDOC_DOCUMENT_VALIGNMENT_TOP   0
 Vertical alignment for SIGNDOC_Document_addTextRect(): top.
#define SIGNDOC_DOCUMENT_VALIGNMENT_CENTER   1
 Vertical alignment for SIGNDOC_Document_addTextRect(): center.
#define SIGNDOC_DOCUMENT_VALIGNMENT_BOTTOM   2
 Vertical alignment for SIGNDOC_Document_addTextRect(): bottom.
#define SIGNDOC_DOCUMENT_FLAGS_RELAX_BYTE_RANGE   0x01
 Flag for SIGNDOC_Document_setFlags(): Relax checking of ByteRange.
#define SIGNDOC_DOCUMENT_FLAGS_AMBIGUOUS_BUTTON_VALUE_EMPTY   0x02
 Flag for SIGNDOC_Document_setFlags(): Make SIGNDOC_Document_exportFields(), 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.
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_SIGNATURES   0x01
 Flag for SIGNDOC_Document_setShootInFoot(): Allow operations to break existing signatures in signature fields.
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_BREAKING_PERMISSIONS   0x02
 Flag for SIGNDOC_Document_setShootInFoot(): Allow operations to break signatures which grant permissions.
#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.
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ALLOW_NON_STANDARD_EXTERNAL_FONTS   0x08
 Flag for SIGNDOC_Document_setShootInFoot(): Allow non-standard usage of external (non-embedded) TrueType fonts.
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_NOT_SHARED   0x10
 Flag for SIGNDOC_Document_setShootInFoot(): Assume that appearance dictionaries and appearance streams are not shared.
#define SIGNDOC_DOCUMENT_SHOOTINFOOTFLAGS_ASSUME_AP_SHARED   0x20
 Flag for SIGNDOC_Document_setShootInFoot(): Always assume that appearance dictionaries and appearance streams are shared.
#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_DOCUMENTLOADER_FLAGS_MAP_INTO_MEMORY   0x01
 Flag for SIGNDOC_DocumentLoader_setFlags(): map input file into memory.
#define SIGNDOC_FIELD_TYPE_UNKNOWN   0
 Field types: Unknown type.
#define SIGNDOC_FIELD_TYPE_PUSHBUTTON   1
 Field types: Pushbutton (PDF).
#define SIGNDOC_FIELD_TYPE_CHECK_BOX   2
 Field types: Check box field (PDF).
#define SIGNDOC_FIELD_TYPE_RADIO_BUTTON   3
 Field types: Radio button (radio button group) (PDF).
#define SIGNDOC_FIELD_TYPE_TEXT   4
 Field types: Text field (PDF).
#define SIGNDOC_FIELD_TYPE_LIST_BOX   5
 Field types: List box (PDF).
#define SIGNDOC_FIELD_TYPE_SIGNATURE_DIGSIG   6
 Field types: Digital signature field (Adobe DigSig in PDF, SOFTPRO signature in TIFF).
#define SIGNDOC_FIELD_TYPE_SIGNATURE_SIGNDOC   7
 Field types: Digital signature field (traditional SignDoc, no longer supported) (PDF).
#define SIGNDOC_FIELD_TYPE_COMBO_BOX   8
 Field types: Combo box (drop-down box) (PDF).
#define SIGNDOC_FIELD_FLAG_READONLY   (1 << 0)
 Field flags: ReadOnly.
#define SIGNDOC_FIELD_FLAG_REQUIRED   (1 << 1)
 Field flags: Required.
#define SIGNDOC_FIELD_FLAG_NOEXPORT   (1 << 2)
 Field flags: NoExport.
#define SIGNDOC_FIELD_FLAG_NOTOGGLETOOFF   (1 << 3)
 Field flags: NoToggleToOff.
#define SIGNDOC_FIELD_FLAG_RADIO   (1 << 4)
 Field flags: Radio.
#define SIGNDOC_FIELD_FLAG_PUSHBUTTON   (1 << 5)
 Field flags: Pushbutton.
#define SIGNDOC_FIELD_FLAG_RADIOSINUNISON   (1 << 6)
 Field flags: RadiosInUnison.
#define SIGNDOC_FIELD_FLAG_MULTILINE   (1 << 7)
 Field flags: Multiline (for text fields).
#define SIGNDOC_FIELD_FLAG_PASSWORD   (1 << 8)
 Field flags: Password.
#define SIGNDOC_FIELD_FLAG_FILESELECT   (1 << 9)
 Field flags: FileSelect.
#define SIGNDOC_FIELD_FLAG_DONOTSPELLCHECK   (1 << 10)
 Field flags: DoNotSpellCheck.
#define SIGNDOC_FIELD_FLAG_DONOTSCROLL   (1 << 11)
 Field flags: DoNotScroll.
#define SIGNDOC_FIELD_FLAG_COMB   (1 << 12)
 Field flags: Comb.
#define SIGNDOC_FIELD_FLAG_RICHTEXT   (1 << 13)
 Field flags: RichText.
#define SIGNDOC_FIELD_FLAG_COMBO   (1 << 14)
 Field flags: Combo (always set for combo boxes).
#define SIGNDOC_FIELD_FLAG_EDIT   (1 << 15)
 Field flags: Edit (for combo boxes): If this flag is set, the user can enter an arbitrary value.
#define SIGNDOC_FIELD_FLAG_SORT   (1 << 16)
 Field flags: Sort (for list boxes and combo boxes).
#define SIGNDOC_FIELD_FLAG_MULTISELECT   (1 << 17)
 Field flags: MultiSelect (for list boxes).
#define SIGNDOC_FIELD_FLAG_COMMITONSELCHANGE   (1 << 18)
 Field flags: CommitOnSelChange (for list boxes and combo boxes).
#define SIGNDOC_FIELD_FLAG_SINGLEPAGE   (1 << 28)
 Field flags: Signature applies to the containing page only (TIFF only).
#define SIGNDOC_FIELD_FLAG_ENABLEADDAFTERSIGNING   (1 << 29)
 Field flags: Signature fields can be inserted after signing this field (TIFF only).
#define SIGNDOC_FIELD_FLAG_INVISIBLE   (1 << 30)
 Field flags: Invisible (TIFF only).
#define SIGNDOC_FIELD_WIDGETFLAG_INVISIBLE   (1 << (1 - 1))
 Annotation flags of a widget: do not display non-standard annotation.
#define SIGNDOC_FIELD_WIDGETFLAG_HIDDEN   (1 << (2 - 1))
 Annotation flags of a widget: do not display or print or interact.
#define SIGNDOC_FIELD_WIDGETFLAG_PRINT   (1 << (3 - 1))
 Annotation flags of a widget: print the annotation.
#define SIGNDOC_FIELD_WIDGETFLAG_NOZOOM   (1 << (4 - 1))
 Annotation flags of a widget: do not scale to match magnification.
#define SIGNDOC_FIELD_WIDGETFLAG_NOROTATE   (1 << (5 - 1))
 Annotation flags of a widget: do not rotate to match page's rotation.
#define SIGNDOC_FIELD_WIDGETFLAG_NOVIEW   (1 << (6 - 1))
 Annotation flags of a widget: do not display or interact.
#define SIGNDOC_FIELD_WIDGETFLAG_READONLY   (1 << (7 - 1))
 Annotation flags of a widget: do not interact.
#define SIGNDOC_FIELD_WIDGETFLAG_LOCKED   (1 << (8 - 1))
 Annotation flags of a widget: annotation cannot be deleted or modified, but its value can be changed.
#define SIGNDOC_FIELD_WIDGETFLAG_TOGGLENOVIEW   (1 << (9 - 1))
 Annotation flags of a widget: toggle SIGNDOC_FIELD_WIDGETFLAG_NOVIEW for certain events.
#define SIGNDOC_FIELD_WIDGETFLAG_LOCKEDCONTENTS   ( 1 << 9)
 Annotation flags of a widget: value cannot be changed.
#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).
#define SIGNDOC_FIELD_JUSTIFICATION_LEFT   1
 Justification for text fields and list boxes: Left-justified.
#define SIGNDOC_FIELD_JUSTIFICATION_CENTER   2
 Justification for text fields and list boxes: Centered.
#define SIGNDOC_FIELD_JUSTIFICATION_RIGHT   3
 Justification for text fields and list boxes: Right-justified.
#define SIGNDOC_FIELD_BORDERSTYLE_OTHER   0
 Border style: Unknown/unsupported border style.
#define SIGNDOC_FIELD_BORDERSTYLE_SOLID   1
 Border style: Solid rectangle.
#define SIGNDOC_FIELD_BORDERSTYLE_DASHED   2
 Border style: Dashed rectangle.
#define SIGNDOC_FIELD_BORDERSTYLE_BEVELED   3
 Border style: Rectangle looking embossed.
#define SIGNDOC_FIELD_BORDERSTYLE_INSET   4
 Border style: Rectangle looking engraved.
#define SIGNDOC_FIELD_BORDERSTYLE_UNDERLINE   5
 Border style: Single line at bottom.
#define SIGNDOC_FIELD_BUTTONSTYLE_DEFAULT   0
 Style used for check boxes and radio buttons: Default button style.
#define SIGNDOC_FIELD_BUTTONSTYLE_OTHER   1
 Style used for check boxes and radio buttons: Unknown/unsupported style.
#define SIGNDOC_FIELD_BUTTONSTYLE_CHECK_MARK   2
 Style used for check boxes and radio buttons: Check mark.
#define SIGNDOC_FIELD_BUTTONSTYLE_CROSS   3
 Style used for check boxes and radio buttons: Cross.
#define SIGNDOC_FIELD_BUTTONSTYLE_STAR   4
 Style used for check boxes and radio buttons: Star.
#define SIGNDOC_FIELD_BUTTONSTYLE_CIRCLE   5
 Style used for check boxes and radio buttons: Circle (default for radio buttons).
#define SIGNDOC_FIELD_BUTTONSTYLE_SQUARE   6
 Style used for check boxes and radio buttons: Square.
#define SIGNDOC_FIELD_BUTTONSTYLE_DIAMOND   7
 Style used for check boxes and radio buttons: Diamond.
#define SIGNDOC_FIELD_LOCKTYPE_NA   0
 Fields to be locked when signing this signature field: Not a signature field.
#define SIGNDOC_FIELD_LOCKTYPE_NONE   1
 Fields to be locked when signing this signature field: Don't lock any fields.
#define SIGNDOC_FIELD_LOCKTYPE_ALL   2
 Fields to be locked when signing this signature field: Lock all fields in the document.
#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.
#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.
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAG_SUBJECTCERT   0x01
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): SubjectCert.
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAG_ISSUERCERT   0x02
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): IssuerCert.
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAG_POLICY   0x04
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): Policy.
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAG_SUBJECTDN   0x08
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): SubjectDN.
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAG_KEYUSAGE   0x20
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): KeyUsage.
#define SIGNDOC_FIELD_CERTSEEDVALUEFLAG_URL   0x40
 Bit masks for SIGNDOC_Field_getCertSeedValueFlags() and SIGNDOC_Field_setCertSeedValueFlags(): URL.
#define SIGNDOC_PROPERTY_TYPE_STRING   0
 Property types: string.
#define SIGNDOC_PROPERTY_TYPE_INTEGER   1
 Property types: integer.
#define SIGNDOC_PROPERTY_TYPE_BOOLEAN   2
 Property types: boolean.
#define SIGNDOC_RENDERPARAMETERS_INTERLACING_OFF   0
 Interlacing methods for SIGNDOC_RenderParameters_setInterlacing(): No interlacing.
#define SIGNDOC_RENDERPARAMETERS_INTERLACING_ON   1
 Interlacing methods for SIGNDOC_RenderParameters_setInterlacing(): Enable Interlacing.
#define SIGNDOC_RENDERPARAMETERS_QUALITY_LOW   0
 Quality of the rendered image: Low quality, fast.
#define SIGNDOC_RENDERPARAMETERS_QUALITY_HIGH   1
 Quality of the rendered image: High quality, slow.
#define SIGNDOC_RENDERPARAMETERS_PIXELFORMAT_DEFAULT   0
 Pixel format for the rendered image: RGB for PDF documents, same as document for TIFF documents.
#define SIGNDOC_RENDERPARAMETERS_PIXELFORMAT_BW   1
 Pixel format for the rendered image: Black and white (1 bit per pixel).
#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_DEFAULT   0
 Compression for the rendered image: no compression for PDF documents, same as document for TIFF documents.
#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_NONE   1
 Compression for the rendered image: no compression.
#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_GROUP4   2
 Compression for the rendered image: CCITT Group 4.
#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_LZW   3
 Compression for the rendered image: LZW.
#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_RLE   4
 Compression for the rendered image: RLE.
#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_ZIP   5
 Compression for the rendered image: ZIP.
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DEFAULT   0
 Signing methods: default method.
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS1   1
 Signing methods: PKCS #1.
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS7_DETACHED   2
 Signing methods: detached PKCS #7.
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS7_SHA1   3
 Signing methods: PKCS #7 with SHA-1 (deprecated).
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_HASH   4
 Signing methods: The signature is just a hash (TIFF only).
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_CADES_DETACHED   5
 Signing methods: ETSI CAdES detached (PAdES-BES).
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_CADES_RFC3161   6
 Signing methods: ETSI CAdES RFC 3161 time stamp.
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_DEFAULT   0
 Hash Algorithm to be used for a detached signature: Default hash algorithm.
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA1   1
 Hash Algorithm to be used for a detached signature: SHA-1.
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA256   2
 Hash Algorithm to be used for a detached signature: SHA-256.
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA384   3
 Hash Algorithm to be used for a detached signature: SHA-384.
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA512   4
 Hash Algorithm to be used for a detached signature: SHA-512.
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_RIPEMD160   5
 Hash Algorithm to be used for a detached signature: RIPEMD-160.
#define SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_DEFAULT   0
 Hash Algorithm to be used for RFC 3161 timestamps: Default value.
#define SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA1   1
 Hash Algorithm to be used for RFC 3161 timestamps: SHA-1.
#define SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA256   2
 Hash Algorithm to be used for RFC 3161 timestamps: SHA-256.
#define SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA384   3
 Hash Algorithm to be used for RFC 3161 timestamps: SHA-384.
#define SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA512   4
 Hash Algorithm to be used for RFC 3161 timestamps: SHA-512.
#define SIGNDOC_SIGNATUREPARAMETERS_OPTIMIZE_OPTIMIZE   0
 Optimization of document before signing: Optimize document before signing for the first time.
#define SIGNDOC_SIGNATUREPARAMETERS_OPTIMIZE_DONT_OPTIMIZE   1
 Optimization of document before signing: Don't optimize document.
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE   0
 Fix appearance streams of check boxes and radio buttons for PDF/A documents: Freeze (fix) appearances.
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_DONT_FREEZE   1
 Fix appearance streams of check boxes and radio buttons for PDF/A documents: Don't freeze (fix) appearances.
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO   2
 Fix appearance streams of check boxes and radio buttons for PDF/A documents: Freeze (fix) appearances if appropriate.
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_SHA1_RSA   0
 Signing algorithms for self-signed certificates: SHA-1 with RSA.
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_MD5_RSA   1
 Signing algorithms for self-signed certificates: MD5 with RSA.
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_SHA256_RSA   2
 Signing algorithms for self-signed certificates: SHA-256 with RSA.
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_SHA384_RSA   3
 Signing algorithms for self-signed certificates: SHA-384 with RSA.
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_SHA512_RSA   4
 Signing algorithms for self-signed certificates: SHA-512 with RSA.
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_RIPEMD160_RSA   5
 Signing algorithms for self-signed certificates: RIPEMD-160 with RSA.
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_RSA   0
 Select how to encrypt the biometric data: Random session key encrypted with public RSA key.
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_FIXED   1
 Select how to encrypt the biometric data: Fixed key (no security).
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_BINARY   2
 Select how to encrypt the biometric data: Binary 256-bit key.
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_PASSPHRASE   3
 Select how to encrypt the biometric data: Passphrase that will be hashed to a 256-bit key.
#define SIGNDOC_SIGNATUREPARAMETERS_BIOMETRICENCRYPTION_DONT_STORE   4
 Select how to encrypt the biometric data: The biometric data won't be stored in the document.
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_LEFT   0
 Horizontal alignment: left.
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_CENTER   1
 Horizontal alignment: center.
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_RIGHT   2
 Horizontal alignment: right.
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_JUSTIFY   3
 Horizontal alignment: justify.
#define SIGNDOC_SIGNATUREPARAMETERS_VALIGNMENT_TOP   0
 Vertical alignment: top.
#define SIGNDOC_SIGNATUREPARAMETERS_VALIGNMENT_CENTER   1
 Vertical alignment: center.
#define SIGNDOC_SIGNATUREPARAMETERS_VALIGNMENT_BOTTOM   2
 Vertical alignment: bottom.
#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).
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_BELOW   1
 Position of the text block w.r.t. to the image: Text is put below the image.
#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).
#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.
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTPOSITION_ABOVE   4
 Position of the text block w.r.t. to the image: Text is put above the image.
#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.
#define SIGNDOC_SIGNATUREPARAMETERS_VALUETYPE_ABS   0
 Indicate how measurements are specified: aValue is the value to be used (units of document coordinates).
#define SIGNDOC_SIGNATUREPARAMETERS_VALUETYPE_FIELD_HEIGHT   1
 Indicate how measurements are specified: Multiply aValue by the field height.
#define SIGNDOC_SIGNATUREPARAMETERS_VALUETYPE_FIELD_WIDTH   2
 Indicate how measurements are specified: Multiply aValue by the field width.
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_SIGNER   0
 Select a string for the appearance stream of PDF documents: String parameter "Signer".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_SIGN_TIME   1
 Select a string for the appearance stream of PDF documents: String parameter "SignTime".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_COMMENT   2
 Select a string for the appearance stream of PDF documents: String parameter "Comment".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_ADVISER   3
 Select a string for the appearance stream of PDF documents: String parameter "Adviser".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_CONTACT_INFO   4
 Select a string for the appearance stream of PDF documents: String parameter "ContactInfo".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_LOCATION   5
 Select a string for the appearance stream of PDF documents: String parameter "Location".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_REASON   6
 Select a string for the appearance stream of PDF documents: String parameter "Reason".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT1   7
 Select a string for the appearance stream of PDF documents: String parameter "Text1".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT2   8
 Select a string for the appearance stream of PDF documents: String parameter "Text2".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT3   9
 Select a string for the appearance stream of PDF documents: String parameter "Text3".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT4   10
 Select a string for the appearance stream of PDF documents: String parameter "Text4".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT5   11
 Select a string for the appearance stream of PDF documents: String parameter "Text5".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT6   12
 Select a string for the appearance stream of PDF documents: String parameter "Text6".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT7   13
 Select a string for the appearance stream of PDF documents: String parameter "Text7".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT8   14
 Select a string for the appearance stream of PDF documents: String parameter "Text8".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT9   15
 Select a string for the appearance stream of PDF documents: String parameter "Text9".
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTGROUP_MASTER   0
 Text groups: Master group.
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTGROUP_SLAVE   1
 Text groups: Slave group.
#define SIGNDOC_SIGNATUREPARAMETERS_IGNORESEEDVALUES_SUBFILTER   0x01
 Flag for ignoring mandatory requirements specified by the signature seed value dictionary: Ignore SubFilter (signing method).
#define SIGNDOC_SIGNATUREPARAMETERS_IGNORESEEDVALUES_DIGESTMETHOD   0x02
 Flag for ignoring mandatory requirements specified by the signature seed value dictionary: Ignore DigestMethod (hash algorithm).
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_SOFTWARE   0x01
 Flags for selecting certificates: include software-based certificates.
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_HARDWARE   0x02
 Flags for selecting certificates: include hardware-based certificates.
#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.
#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.
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK   0x40
 Flags for selecting certificates: never ask the user to select a certificate; exactly one certificate must match.
#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)
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_BW   0x01
 Flags for rendering the signature: black and white.
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_GRAY   0x02
 Flags for rendering the signature: use gray levels computed from pressure.
#define SIGNDOC_SIGNATUREPARAMETERS_RENDERSIGNATUREFLAGS_ANTIALIAS   0x04
 Flags for rendering the signature: use gray levels for antialiasing.
#define SIGNDOC_SIGNATUREPARAMETERS_IMAGETRANSPARENCY_OPAQUE   0
 Transparency of signature image: Make signature image opaque.
#define SIGNDOC_SIGNATUREPARAMETERS_IMAGETRANSPARENCY_BRIGHTEST   1
 Transparency of signature image: Make the brightest color transparent.
#define SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_ALL   0
 Integer parameter AddCertificates: Include all intermediate certificates and the root certificate.
#define SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_NONE   1
 Integer parameter AddCertificates: Do not include any certificates.
#define SIGNDOC_SIGNATUREPARAMETERS_ADDCERTIFICATES_TRUSTED   2
 Integer parameter AddCertificates: Include all intermediate certificates and the root certificate, require the root certificate to be trusted.
#define SIGNDOC_SIGNATUREPARAMETERS_ADDREVOCATIONINFO_ADD   0x01
 Flag for integer parameter AddRevocationInfo: Add revocation data.
#define SIGNDOC_SIGNATUREPARAMETERS_RETURNCODE_OK   0
 Return code: Parameter set successfully.
#define SIGNDOC_SIGNATUREPARAMETERS_RETURNCODE_UNKNOWN   1
 Return code: Unknown parameter.
#define SIGNDOC_SIGNATUREPARAMETERS_RETURNCODE_NOT_SUPPORTED   2
 Return code: Setting the parameter is not supported.
#define SIGNDOC_SIGNATUREPARAMETERS_RETURNCODE_INVALID_VALUE   3
 Return code: The value for the parameter is invalid.
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_SET   0
 Parameter has been set (most parameters have a default value such as the empty string which may be treated as "set" or "not set" depending on the implementation's fancy).
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_MISSING   1
 Status of a parameter: Parameter must be set but is not set.
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_SUPPORTED   2
 Status of a parameter: Parameter is supported and optional, but has not been set or is set to the default value.
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_IGNORED   3
 Status of a parameter: Parameter can be (or is) set but will be ignored.
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_NOT_SUPPORTED   4
 Status of a parameter: Parameter is not supported for this field.
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_UNKNOWN   5
 Status of a parameter: Unknown parameter.
#define SIGNDOC_VERIFICATIONPARAMETERS_RETURNCODE_OK   0
 Return code: Parameter set successfully.
#define SIGNDOC_VERIFICATIONPARAMETERS_RETURNCODE_UNKNOWN   1
 Return code: Unknown parameter.
#define SIGNDOC_VERIFICATIONPARAMETERS_RETURNCODE_NOT_SUPPORTED   2
 Return code: Setting the parameter is not supported.
#define SIGNDOC_VERIFICATIONPARAMETERS_RETURNCODE_INVALID_VALUE   3
 Return code: The value for the parameter is invalid.
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_DONT_VERIFY   0
 Value for integer parameter "CertificateChainVerificationPolicy": Don't verify the certificate chain.
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED   1
 Value for integer parameter "CertificateChainVerificationPolicy": Accept self-signed certificates.
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_ACCEPT_SELF_SIGNED_WITH_BIO   2
 Value for integer parameter "CertificateChainVerificationPolicy": Accept self-signed certificates if biometric data is present.
#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.
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATECHAINVERIFICATIONPOLICY_REQUIRE_TRUSTED_ROOT   4
 Value for integer parameter "CertificateChainVerificationPolicy": Require a trusted root certificate.
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_DONT_CHECK   0
 Values for integer parameter "CertificateRevocationVerificationPolicy": Don't verify revocation of certificates.
#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.
#define SIGNDOC_VERIFICATIONPARAMETERS_CERTIFICATEREVOCATIONVERIFICATIONPOLICY_ONLINE   2
 Values for integer parameter "CertificateRevocationVerificationPolicy": Check revocation, assume that certificates are revoked if the revocation server is offline.
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MINIMAL   0
 Value for integer parameter "VerificationModel": Minimal.
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_CHAIN   1
 Value for integer parameter "VerificationModel": Chain model.
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_MODIFIED_SHELL   2
 Value for integer parameter "VerificationModel": Modified shell model (also known as hybrid model).
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONMODEL_SHELL   3
 Value for integer parameter "VerificationModel": Shell model.
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_CHECK_REVOCATION   0x01
 Flag for integer parameter "VerificationFlags": Check the revocation state of the certificates.
#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.
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_USE_OCSP_ONLY   0x04
 Flag for integer parameter "VerificationFlags": Use only OCSP for checking the revocation state of the certificates.
#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.
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ENFORCE_NEXT_UPDATE   0x10
 Flag for integer parameter "VerificationFlags": Enforce nextUpdate of CRLs and OCSP responses.
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ENFORCE_OCSP_SIGNER   0x20
 Flag for integer parameter "VerificationFlags": Enforce correct OCSP signer.
#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.
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_NO_OCSP_NONCE   0x80
 Flag for integer parameter "VerificationFlags": Do not use a nonce in OCSP requests.
#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.
#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.
#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_OK   SIGNDOC_DOCUMENT_RETURNCODE_OK
 Return code: No error.
#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_INVALID_ARGUMENT   SIGNDOC_DOCUMENT_RETURNCODE_INVALID_ARGUMENT
 Return code: Invalid argument.
#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_NOT_SUPPORTED   SIGNDOC_DOCUMENT_RETURNCODE_NOT_SUPPORTED
 Return code: Operation not supported.
#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_NOT_VERIFIED   SIGNDOC_DOCUMENT_RETURNCODE_NOT_VERIFIED
 Return code: SIGNDOC_Document_verifySignature() has not been called.
#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_PROPERTY_NOT_FOUND   SIGNDOC_DOCUMENT_RETURNCODE_PROPERTY_NOT_FOUND
 Return code: Property not found.
#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_NO_BIOMETRIC_DATA   SIGNDOC_DOCUMENT_RETURNCODE_NO_BIOMETRIC_DATA
 Return code: No biometric data (or hash) available.
#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_UNEXPECTED_ERROR   SIGNDOC_DOCUMENT_RETURNCODE_UNEXPECTED_ERROR
 Return code: Unexpected error.
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_UNMODIFIED   0
 State of a signature: No error, signature and document verified.
#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.
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_DOCUMENT_MODIFIED   2
 State of a signature: Document modified (possibly forged).
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_UNSUPPORTED_SIGNATURE   3
 State of a signature: Unsupported signature method.
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_INVALID_CERTIFICATE   4
 State of a signature: Invalid certificate.
#define SIGNDOC_VERIFICATIONRESULT_SIGNATURESTATE_EMPTY   5
 State of a signature: Signature field without signature.
#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).
#define SIGNDOC_VERIFICATIONRESULT_TIMESTAMPSTATE_MISSING   1
 State of the RFC 3161 time stamp: There is no RFC 3161 time stamp.
#define SIGNDOC_VERIFICATIONRESULT_TIMESTAMPSTATE_INVALID   2
 State of the RFC 3161 time stamp: An RFC 3161 time stamp is present but invalid.
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_OK   0
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Chain OK.
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_BROKEN_CHAIN   1
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Chain broken.
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_UNTRUSTED_ROOT   2
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Untrusted root certificate.
#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_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_PATH_LENGTH   5
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Path length constraint not satisfied.
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_INVALID   6
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Invalid certificate or chain.
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATECHAINSTATE_ERROR   7
 Certificate chain state for SIGNDOC_VerificationResult_verifyCertificateChain() and SIGNDOC_VerificationResult_verifyTimeStampCertificateChain(): Other error.
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_OK   0
 Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): No certificate revoked.
#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_REVOKED   3
 Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): At least one certificate has been revoked.
#define SIGNDOC_VERIFICATIONRESULT_CERTIFICATEREVOCATIONSTATE_ERROR   4
 Certificate revocation state for SIGNDOC_VerificationResult_getCertificateRevocationState() and SIGNDOC_VerificationResult_verifyTimeStampCertificateRevocation(): Error.
#define SIGNDOC_WATERMARK_JUSTIFICATION_LEFT   0
 Justification of multi-line text: left.
#define SIGNDOC_WATERMARK_JUSTIFICATION_CENTER   1
 Justification of multi-line text: center.
#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_HALIGNMENT_LEFT   0
 Horizontal alignment: left.
#define SIGNDOC_WATERMARK_HALIGNMENT_CENTER   1
 Horizontal alignment: center.
#define SIGNDOC_WATERMARK_HALIGNMENT_RIGHT   2
 Horizontal alignment: right.
#define SIGNDOC_WATERMARK_VALIGNMENT_TOP   0
 Vertical alignment: top.
#define SIGNDOC_WATERMARK_VALIGNMENT_CENTER   1
 Vertical alignment: center.
#define SIGNDOC_WATERMARK_VALIGNMENT_BOTTOM   2
 Vertical alignment: bottom.
#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_ENCODING_LATIN_1   2
 Encoding of strings: ISO 8859-1.
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_OK   0
 Return value of SIGNDOC_TimeStamper_stamp(): Success.
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_INVALID_INPUT   1
 Return value of SIGNDOC_TimeStamper_stamp(): Invalid argument or invalid time-stamp request.
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_TIMEOUT   2
 Return value of SIGNDOC_TimeStamper_stamp(): Timeout.
#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_SSL_ERROR   5
 Return value of SIGNDOC_TimeStamper_stamp(): Some failure at the SSL/TLS layer.
#define SIGNDOC_TIMESTAMPER_STAMPRESULT_HTTP_ERROR   6
 Return value of SIGNDOC_TimeStamper_stamp(): Some failure at the HTTP layer.
#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_INVALID_RESPONSE   8
 Return value of SIGNDOC_TimeStamper_stamp(): The response from the server is invalid.
#define SIGNDOC_TIMESTAMPER_STAMPFLAGS_DONT_CHECK_REVOCATION   0x01
 Flag for SIGNDOC_TimeStamper_stamp(): Do not check revocation.
#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_NONE   0
 Hash Algorithm to be used for signature: Invalid hash algorithm.
#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_SHA1   1
 Hash Algorithm to be used for signature: SHA-1.
#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_SHA256   2
 Hash Algorithm to be used for signature: SHA-256.
#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_MD5   3
 Hash Algorithm to be used for signature: MD5.
#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_SHA384   4
 Hash Algorithm to be used for signature: SHA-384.
#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_SHA512   5
 Hash Algorithm to be used for signature: SHA-512.
#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_RIPEMD160   6
 Hash Algorithm to be used for signature: RIPEMD-160.
#define SIGNDOC_SIGNRSA_VERSION_1_5   0
 RSA version (padding) used by SIGNDOC_SignRSA_sign(): RSA 1.5 (PKCS1-v1_5).
#define SIGNDOC_SIGNRSA_VERSION_2_0   1
 RSA version (padding) used by SIGNDOC_SignRSA_sign(): RSA 2.0 (OAEP).
#define SIGNDOC_SIGNRSA_HASHALGORITHM_SHA1   1
 Hash Algorithm used by SIGNDOC_SignRSA_sign(): SHA-1.
#define SIGNDOC_SIGNRSA_HASHALGORITHM_SHA256   2
 Hash Algorithm used by SIGNDOC_SignRSA_sign(): SHA-256.
#define SIGNDOC_SIGNRSA_HASHALGORITHM_SHA384   3
 Hash Algorithm used by SIGNDOC_SignRSA_sign(): SHA-384.
#define SIGNDOC_SIGNRSA_HASHALGORITHM_SHA512   4
 Hash Algorithm used by SIGNDOC_SignRSA_sign(): SHA-512.
#define SIGNDOC_SIGNRSA_HASHALGORITHM_RIPEMD160   5
 Hash Algorithm used by SIGNDOC_SignRSA_sign(): RIPEMD-160.
#define SIGNDOC_COLOR_TYPE_GRAY   0
 Color type: Gray scale.
#define SIGNDOC_COLOR_TYPE_RGB   1
 Color type: RGB color.

Typedefs

typedef int SIGNDOC_Boolean
 Type for boolean values.
typedef void(* SIGNDOC_UserInputStream_close )(struct SIGNDOC_Exception **aEx, void *aClosure)
 SIGNDOC_UserInputStream callback implementing close().
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 int(* SIGNDOC_UserInputStream_getAvailable )(struct SIGNDOC_Exception **aEx, void *aClosure)
 SIGNDOC_UserInputStream callback implementing getAvailable().
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_write )(struct SIGNDOC_Exception **aEx, void *aClosure, const void *aSrc, int aLen)
 SIGNDOC_UserOutputStream callback implementing write().
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().

Functions

int SIGNDOC_Source_fetch (struct SIGNDOC_Exception **aEx, struct SIGNDOC_Source *aObj, const void **aPtr, int aMaxSize)
 Fetch data from a SIGNDOC_Source.
void SIGNDOC_free (void *aPtr)
 Free a block of memory.
void * SIGNDOC_alloc (struct SIGNDOC_Exception **aEx, size_t aSize)
 Allocate a block of memory.
char * SIGNDOC_strdup (struct SIGNDOC_Exception **aEx, const char *aStr)
 Allocate a block of memory initialized with a null-terminated string.
char * SIGNDOC_recodeStringStrict (struct SIGNDOC_Exception **aEx, int aInputEncoding, const char *aInput, int aOutputEncoding)
 Convert a string from one encoding to another encoding.
char * SIGNDOC_recodeStringRelaxed (struct SIGNDOC_Exception **aEx, int aInputEncoding, const char *aInput, int aOutputEncoding)
 Convert a string from one encoding to another encoding.
void SIGNDOC_logLine (int aLevel, const char *aLine)
 Log a line.

Detailed Description

SignDoc SDK C API.


Define Documentation

#define SDCAPI
#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: left.

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

#define SIGNDOC_ANNOTATION_HALIGNMENT_RIGHT   2

Horizontal alignment: 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_RETURNCODE_INVALID_VALUE   2

Return code: The value for the parameter is invalid.

#define SIGNDOC_ANNOTATION_RETURNCODE_NOT_AVAILABLE   3

Return code: The value is not available.

#define SIGNDOC_ANNOTATION_RETURNCODE_NOT_SUPPORTED   1

Return code: Setting the parameter is not supported.

#define SIGNDOC_ANNOTATION_RETURNCODE_OK   0

Return code: Parameter set successfully.

#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_COLOR_TYPE_GRAY   0

Color type: Gray scale.

#define SIGNDOC_COLOR_TYPE_RGB   1

Color type: RGB color.

#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

Flag for SIGNDOC_Document_copyToStream(): Include unsaved changes.

See SIGNDOC_Document_copyToStream() for details.

See also:
SIGNDOC_Document_copyToStream()
#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

Document type: For SIGNDOC_DocumentLoader_ping().

#define SIGNDOC_DOCUMENT_EXPORTFLAGS_TOP   0x01

Flags modifying the behavior of SIGNDOC_Document_exportFields() and SIGNDOC_Document_exportProperties(): 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).

#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_HYPHENATION   0x0002

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

#define SIGNDOC_DOCUMENT_FINDTEXTFLAGS_IGNORE_SEQUENCE   0x0004

Flags modifying the behavior of SIGNDOC_Document_findText(): Use character positions instead of sequence (can be expensive, not yet implemented).

#define SIGNDOC_DOCUMENT_FLAGS_AMBIGUOUS_BUTTON_VALUE_EMPTY   0x02

Flag for SIGNDOC_Document_setFlags(): Make SIGNDOC_Document_exportFields(), 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_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() behaves 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_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_CENTER   1

Horizontal alignment for SIGNDOC_Document_addTextRect(): center.

#define SIGNDOC_DOCUMENT_HALIGNMENT_LEFT   0

Horizontal alignment for SIGNDOC_Document_addTextRect(): left.

#define SIGNDOC_DOCUMENT_HALIGNMENT_RIGHT   2

Horizontal alignment for SIGNDOC_Document_addTextRect(): right.

#define SIGNDOC_DOCUMENT_IMPORTFLAGS_ATOMIC   0x01

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

#define SIGNDOC_DOCUMENT_IMPORTIMAGEFLAGS_BRIGHTEST_TRANSPARENT   0x02

Flags modifying the behavior of SIGNDOC_Document_addImageFromBlob(), SIGNDOC_Document_addImageFromFile(), SIGNDOC_Document_importPageFromImageBlob(), and SIGNDOC_Document_importPageFromImageFile(): Make the brightest color transparent.

This flag may be specified for SIGNDOC_Document_addImageFromBlob() and SIGNDOC_Document_addImageFromFile() only. SIGNDOC_Document_importPageFromImageBlob() and SIGNDOC_Document_importPageFromImageFile() always make the image opaque.

The rest of this description applies to SIGNDOC_Document_addImageFromBlob() and SIGNDOC_Document_addImageFromFile() 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_IMPORTIMAGEFLAGS_KEEP_ASPECT_RATIO   0x01

Flags modifying the behavior of SIGNDOC_Document_addImageFromBlob(), SIGNDOC_Document_addImageFromFile(), SIGNDOC_Document_importPageFromImageBlob(), and SIGNDOC_Document_importPageFromImageFile(): Keep aspect ratio of image, center image on white background.

#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_RETURNCODE_AMBIGUOUS_CERTIFICATE   26

Return code: More than one matching certificate found and SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESELECTIONFLAGS_NEVER_ASK is specified.

#define SIGNDOC_DOCUMENT_RETURNCODE_ANNOTATION_NOT_FOUND   22

Return code: Annotation not found, for SIGNDOC_Document_getAnnotation().

#define SIGNDOC_DOCUMENT_RETURNCODE_ATTACHMENT_EXISTS   24

Return code: Attachment already exists.

#define SIGNDOC_DOCUMENT_RETURNCODE_ATTACHMENT_NOT_FOUND   23

Return code: Attachment not found.

#define SIGNDOC_DOCUMENT_RETURNCODE_CANCELLED   17

Return code: Certificate dialog cancelled by user.

#define SIGNDOC_DOCUMENT_RETURNCODE_FIELD_EXISTS   14

Return code: Field already exists.

#define SIGNDOC_DOCUMENT_RETURNCODE_FIELD_NOT_FOUND   2

Return code: Field not found (or not a signature field).

#define SIGNDOC_DOCUMENT_RETURNCODE_FIELD_NOT_SIGNED   20

Return code: Field not signed, for SIGNDOC_Document_copyAsSignedToStream().

#define SIGNDOC_DOCUMENT_RETURNCODE_FONT_NOT_FOUND   6

Return code: The requested font could not be found or does not contain all required characters.

See also see also SIGNDOC_Document_setShootInFoot().

#define SIGNDOC_DOCUMENT_RETURNCODE_INVALID_ARGUMENT   1

Return code: Invalid argument.

#define SIGNDOC_DOCUMENT_RETURNCODE_INVALID_IMAGE   4

Return code: Invalid image (e.g., unsupported format).

#define SIGNDOC_DOCUMENT_RETURNCODE_INVALID_PROFILE   3

Return code: Profile unknown or not applicable.

#define SIGNDOC_DOCUMENT_RETURNCODE_INVALID_SIGNATURE   21

Return code: Signature is not valid, for SIGNDOC_Document_copyAsSignedToStream().

#define SIGNDOC_DOCUMENT_RETURNCODE_IO_ERROR   9

Return code: I/O error.

#define SIGNDOC_DOCUMENT_RETURNCODE_LICENSE_ERROR   15

Return code: License initialization failed or license check failed.

#define SIGNDOC_DOCUMENT_RETURNCODE_NO_BIOMETRIC_DATA   18

Return code: (used by SIGNDOC_VerificationResult)

#define SIGNDOC_DOCUMENT_RETURNCODE_NO_CERTIFICATE   25

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

#define SIGNDOC_DOCUMENT_RETURNCODE_NO_DATABLOCK   7

Return code: No datablock found (obsolete).

#define SIGNDOC_DOCUMENT_RETURNCODE_NOT_ALLOWED   27

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

See also:
SIGNDOC_Document_removePDFA(), SIGNDOC_Document_setShootInFoot()
#define SIGNDOC_DOCUMENT_RETURNCODE_NOT_SUPPORTED   8

Return code: Operation not supported.

#define SIGNDOC_DOCUMENT_RETURNCODE_NOT_VERIFIED   10

Return code: (used by SIGNDOC_VerificationResult)

#define SIGNDOC_DOCUMENT_RETURNCODE_OK   0

Return code: No error.

#define SIGNDOC_DOCUMENT_RETURNCODE_PAGE_NOT_FOUND   12

Return code: Page not found (invalid page number).

#define SIGNDOC_DOCUMENT_RETURNCODE_PARAMETER_NOT_SET   19

Return code: (Java only)

#define SIGNDOC_DOCUMENT_RETURNCODE_PROPERTY_NOT_FOUND   11

Return code: Property not found.

#define SIGNDOC_DOCUMENT_RETURNCODE_TYPE_MISMATCH   5

Return code: Field type or property type mismatch.

#define SIGNDOC_DOCUMENT_RETURNCODE_UNEXPECTED_ERROR   16

Return code: Unexpected error.

#define SIGNDOC_DOCUMENT_RETURNCODE_WRONG_COLLECTION   13

Return code: Property accessed via wrong collection.

#define SIGNDOC_DOCUMENT_SAVEFLAGS_INCREMENTAL   0x01

Flags modifying the behavior of SIGNDOC_Document_saveToFile() and SIGNDOC_Document_saveToStream(): Save incrementally (PDF).

#define SIGNDOC_DOCUMENT_SAVEFLAGS_LINEARIZED   0x04

Flags modifying the behavior of SIGNDOC_Document_saveToFile() 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.
Todo:
implement SIGNDOC_DOCUMENT_SAVEFLAGS_LINEARIZED
#define SIGNDOC_DOCUMENT_SAVEFLAGS_PDF_1_4   0x08

Flags modifying the behavior of SIGNDOC_Document_saveToFile() 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() and SIGNDOC_Document_saveToStream(): Fix appearance streams of check boxes and radio buttons for PDF/A-1 documents.

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() are not PDF/A-1-compliant.

To make the appearance streams of check boxes and radio buttons PDF/A-1-compliant, save the document with this flag set. The document will be modified in memory and then saved.

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

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() and SIGNDOC_Document_saveToStream(): Remove unused objects (PDF).

This flag is ignored, unused objects are always removed.

#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
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_IGNORE   0x04

Flags modifying the behavior of SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf(): Ignore font problems.

SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf() will modify/add the field even if no font covering all required characters is found, and they won't report the problem to the caller. The appearance of the field won't represent the contents in that case.

Exactly one of SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_FAIL, SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_WARN, and SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_IGNORE must be specified.

See also:
SIGNDOC_DOCUMENT_SETFIELDFLAGS_MOVE, SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP, SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP
#define SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_WARN   0x02

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

SIGNDOC_Document_setField(), SIGNDOC_Document_addField(), and SIGNDOC_Document_applyFdf() will modify/add the field even if no font covering all required characters is found, but they will report error SIGNDOC_DOCUMENT_RETURNCODE_FONT_NOT_FOUND. The appearance of the field won't represent the contents in that case.

Exactly one of SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_FAIL, SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_WARN, and SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_IGNORE must be specified.

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_FLAG_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.

See also:
SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_FAIL, SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_WARN, SIGNDOC_DOCUMENT_SETFIELDFLAGS_FONT_IGNORE, SIGNDOC_DOCUMENT_SETFIELDFLAGS_KEEP_AP, SIGNDOC_DOCUMENT_SETFIELDFLAGS_UPDATE_AP
#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_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_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 fonts.

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

If this flag is set, external TrueType 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_VALIGNMENT_BOTTOM   2

Vertical alignment for SIGNDOC_Document_addTextRect(): bottom.

#define SIGNDOC_DOCUMENT_VALIGNMENT_CENTER   1

Vertical alignment for SIGNDOC_Document_addTextRect(): center.

#define SIGNDOC_DOCUMENT_VALIGNMENT_TOP   0

Vertical alignment for SIGNDOC_Document_addTextRect(): 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_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_CERTSEEDVALUEFLAG_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_CERTSEEDVALUEFLAG_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_CERTSEEDVALUEFLAG_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_CERTSEEDVALUEFLAG_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_CERTSEEDVALUEFLAG_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_CERTSEEDVALUEFLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_ENABLEADDAFTERSIGNING   (1 << 29)

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

The SIGNDOC_FIELD_FLAG_INVISIBLE, SIGNDOC_FIELD_FLAG_ENABLEADDAFTERSIGNING, and SIGNDOC_FIELD_FLAG_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_FLAG_ENABLEADDAFTERSIGNING flag changes this behavior. (SIGNDOC_FIELD_FLAG_ENABLEADDAFTERSIGNING is ignored for PDF documents.)

If the SIGNDOC_FIELD_FLAG_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_FLAG_ENABLEADDAFTERSIGNING is not set (in a TIFF document) can only be cleared if no other signature fields that don't have SIGNDOC_FIELD_FLAG_ENABLEADDAFTERSIGNING have been signed after the signature field to be cleared. Signature fields having SIGNDOC_FIELD_FLAG_ENABLEADDAFTERSIGNING set can always be cleared.

See also:
SIGNDOC_Field_getFlags(), SIGNDOC_Field_setFlags(), SIGNDOC_Document_clearSignature()
#define SIGNDOC_FIELD_FLAG_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_FLAG_INVISIBLE   (1 << 30)

Field flags: Invisible (TIFF only).

The SIGNDOC_FIELD_FLAG_INVISIBLE, SIGNDOC_FIELD_FLAG_ENABLEADDAFTERSIGNING, and SIGNDOC_FIELD_FLAG_SINGLEPAGE flags cannot be modified.

Invisible signature fields (SIGNDOC_FIELD_FLAG_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_FLAG_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". Automatic line breaking is not implemented for complex scripts.

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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_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_FLAG_SINGLEPAGE   (1 << 28)

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

The SIGNDOC_FIELD_FLAG_INVISIBLE, SIGNDOC_FIELD_FLAG_ENABLEADDAFTERSIGNING, and SIGNDOC_FIELD_FLAG_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_FLAG_ENABLEADDAFTERSIGNING flag set: If the SIGNDOC_FIELD_FLAG_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_FLAG_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_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_WIDGETFLAG_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_WIDGETFLAG_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_WIDGETFLAG_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_WIDGETFLAG_LOCKEDCONTENTS   ( 1 << 9)

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_WIDGETFLAG_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_WIDGETFLAG_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_WIDGETFLAG_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_WIDGETFLAG_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_WIDGETFLAG_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_WIDGETFLAG_TOGGLENOVIEW   (1 << (9 - 1))

Annotation flags of a widget: toggle SIGNDOC_FIELD_WIDGETFLAG_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_PROPERTY_TYPE_BOOLEAN   2

Property types: boolean.

#define SIGNDOC_PROPERTY_TYPE_INTEGER   1

Property types: integer.

#define SIGNDOC_PROPERTY_TYPE_STRING   0

Property types: string.

#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_DEFAULT   0

Compression for the rendered image: no compression for PDF documents, same as document for TIFF documents.

Not all compressions are available for all formats. In fact, all these compressions are available for TIFF only.

#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_GROUP4   2

Compression for the rendered image: CCITT Group 4.

Not all compressions are available for all formats. In fact, all these compressions are available for TIFF only.

#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_LZW   3

Compression for the rendered image: LZW.

Not all compressions are available for all formats. In fact, all these compressions are available for TIFF only.

#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_NONE   1

Compression for the rendered image: no compression.

Not all compressions are available for all formats. In fact, all these compressions are available for TIFF only.

#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_RLE   4

Compression for the rendered image: RLE.

Not all compressions are available for all formats. In fact, all these compressions are available for TIFF only.

#define SIGNDOC_RENDERPARAMETERS_COMPRESSION_ZIP   5

Compression for the rendered image: ZIP.

Not all compressions are available for all formats. In fact, all these compressions are available for TIFF only.

#define SIGNDOC_RENDERPARAMETERS_INTERLACING_OFF   0

Interlacing methods for SIGNDOC_RenderParameters_setInterlacing(): No interlacing.

#define SIGNDOC_RENDERPARAMETERS_INTERLACING_ON   1

Interlacing methods for SIGNDOC_RenderParameters_setInterlacing(): Enable Interlacing.

A suitable interlacing method for the chosen image format will be used.

#define SIGNDOC_RENDERPARAMETERS_PIXELFORMAT_BW   1

Pixel format for the rendered image: Black and white (1 bit per pixel).

#define SIGNDOC_RENDERPARAMETERS_PIXELFORMAT_DEFAULT   0

Pixel format for the rendered image: RGB for PDF documents, same as document for TIFF documents.

#define SIGNDOC_RENDERPARAMETERS_QUALITY_HIGH   1

Quality of the rendered image: High quality, slow.

#define SIGNDOC_RENDERPARAMETERS_QUALITY_LOW   0

Quality of the rendered image: Low quality, fast.

#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_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 hardware-based certificates.

Used for integer parameter "SelectCertificate".

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 software-based certificates.

Used for integer parameter "SelectCertificate".

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".

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_CERTIFICATESIGNINGALGORITHM_MD5_RSA   1

Signing algorithms for self-signed certificates: MD5 with RSA.

Used for integer parameter "CertificateSigningAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_RIPEMD160_RSA   5

Signing algorithms for self-signed certificates: RIPEMD-160 with RSA.

Used for integer parameter "CertificateSigningAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_SHA1_RSA   0

Signing algorithms for self-signed certificates: SHA-1 with RSA.

Used for integer parameter "CertificateSigningAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_SHA256_RSA   2

Signing algorithms for self-signed certificates: SHA-256 with RSA.

Used for integer parameter "CertificateSigningAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_SHA384_RSA   3

Signing algorithms for self-signed certificates: SHA-384 with RSA.

Used for integer parameter "CertificateSigningAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_CERTIFICATESIGNINGALGORITHM_SHA512_RSA   4

Signing algorithms for self-signed certificates: SHA-512 with RSA.

Used for integer parameter "CertificateSigningAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_DEFAULT   0

Hash Algorithm to be used for a detached signature: Default hash algorithm.

Use the hash algorithm specified by the the DigestMethod values of the signature field seed value dictionary or, if not present, SHA-256 (if supported), or SHA-1 (as last resort).

Used for integer parameter "DetachedHashAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_RIPEMD160   5

Hash Algorithm to be used for a detached signature: RIPEMD-160.

Used for integer parameter "DetachedHashAlgorithm".

SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_RIPEMD160 is not supported under Windows.

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA1   1

Hash Algorithm to be used for a detached signature: SHA-1.

Used for integer parameter "DetachedHashAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA256   2

Hash Algorithm to be used for a detached signature: SHA-256.

Used for integer parameter "DetachedHashAlgorithm".

SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA256 is supported under Linux, iOS, Android, OS X, and under Windows XP SP3 and later. If SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA256 is selected but not supported, SIGNDOC_Document_addSignature() will fall back to SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA1.

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA384   3

Hash Algorithm to be used for a detached signature: SHA-384.

Used for integer parameter "DetachedHashAlgorithm".

SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA384 is supported under Linux, iOS, Android, OS X, and under Windows XP SP3 and later. If SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA384 is selected but not supported, SIGNDOC_Document_addSignature() will fall back to SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA1.

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA512   4

Hash Algorithm to be used for a detached signature: SHA-512.

Used for integer parameter "DetachedHashAlgorithm".

SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA512 is supported under Linux, iOS, Android, OS X, and under Windows XP SP3 and later. If SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA512 is selected but not supported, SIGNDOC_Document_addSignature() will fall back to SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_SHA1.

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_CENTER   1

Horizontal alignment: center.

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

#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_JUSTIFY   3

Horizontal alignment: justify.

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

#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_LEFT   0

Horizontal alignment: left.

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

#define SIGNDOC_SIGNATUREPARAMETERS_HALIGNMENT_RIGHT   2

Horizontal alignment: right.

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

#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 the hash algorithm specified by integer parameter "DetachedHashAlgorithm" is not SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_DEFAULT (or is implied by integer parameter "Method") and is not listed in the DigestMethod entry of the signature field seed value dictionary.

If this flag is set, you can override the DigestMethod entry of the signature field seed value dictionary with integer parameter "DetachedHashAlgorithm" and/or "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.

Use the method specified by the 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.

Not yet supported for signing. Used by SIGNDOC_VerificationResult_getMethod().

See also:
SIGNDOC_VerificationResult_getMethod()
#define SIGNDOC_SIGNATUREPARAMETERS_METHOD_DIGSIG_PKCS1   1

Signing methods: PKCS #1.

Used for integer parameter "Method".

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_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_PARAMETERSTATE_IGNORED   3

Status of a parameter: Parameter can be (or is) set but will be ignored.

SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_IGNORED is currently not used.

See also:
SIGNDOC_SignatureParameters_getState()
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_MISSING   1

Status of a parameter: Parameter must be set but is not set.

SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_MISSING is currently not used.

See also:
SIGNDOC_SignatureParameters_getState()
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_NOT_SUPPORTED   4

Status of a parameter: Parameter is not supported for this field.

See also:
SIGNDOC_SignatureParameters_getState()
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_SET   0

Parameter has been set (most parameters have a default value such as the empty string which may be treated as "set" or "not set" depending on the implementation's fancy).

Don't make your code depend on the difference between SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_SET and SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_SUPPORTED.

See also:
SIGNDOC_SignatureParameters_getState()
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_SUPPORTED   2

Status of a parameter: Parameter is supported and optional, but has not been set or is set to the default value.

Don't make your code depend on the difference between SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_SET and SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_SUPPORTED.

See also:
SIGNDOC_SignatureParameters_getState()
#define SIGNDOC_SIGNATUREPARAMETERS_PARAMETERSTATE_UNKNOWN   5

Status of a parameter: Unknown parameter.

See also:
SIGNDOC_SignatureParameters_getState()
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO   2

Fix appearance streams of check boxes and radio buttons for PDF/A documents: Freeze (fix) appearances if appropriate.

Used for integer parameter "PDFAButtons".

Using SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE (or SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO, if the document claims to be PDF/A-1-compliant and has no signed signature fields) is equivalent to saving the document with SIGNDOC_DOCUMENT_SAVEFLAGS_PDFA_BUTTONS before signing.

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_DONT_FREEZE   1

Fix appearance streams of check boxes and radio buttons for PDF/A documents: Don't freeze (fix) appearances.

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE   0

Fix appearance streams of check boxes and radio buttons for PDF/A documents: Freeze (fix) appearances.

Used for integer parameter "PDFAButtons".

Using SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_FREEZE (or SIGNDOC_SIGNATUREPARAMETERS_PDFABUTTONS_AUTO, if the document claims to be PDF/A-1-compliant and has no signed signature fields) is equivalent to saving the document with SIGNDOC_DOCUMENT_SAVEFLAGS_PDFA_BUTTONS before signing.

See also:
SIGNDOC_SignatureParameters_setInteger()
#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_RETURNCODE_INVALID_VALUE   3

Return code: The value for the parameter is invalid.

#define SIGNDOC_SIGNATUREPARAMETERS_RETURNCODE_NOT_SUPPORTED   2

Return code: Setting the parameter is not supported.

#define SIGNDOC_SIGNATUREPARAMETERS_RETURNCODE_OK   0

Return code: Parameter set successfully.

#define SIGNDOC_SIGNATUREPARAMETERS_RETURNCODE_UNKNOWN   1

Return code: Unknown parameter.

#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_setLength()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTGROUP_SLAVE   1

Text groups: Slave group.

See also:
SIGNDOC_SIGNATUREPARAMETERS_TEXTGROUP_MASTER
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_ADVISER   3

Select a string for the appearance stream of PDF documents: String parameter "Adviser".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_COMMENT   2

Select a string for the appearance stream of PDF documents: String parameter "Comment".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_CONTACT_INFO   4

Select a string for the appearance stream of PDF documents: String parameter "ContactInfo".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_LOCATION   5

Select a string for the appearance stream of PDF documents: String parameter "Location".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_REASON   6

Select a string for the appearance stream of PDF documents: String parameter "Reason".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_SIGN_TIME   1

Select a string for the appearance stream of PDF documents: String parameter "SignTime".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_SIGNER   0

Select a string for the appearance stream of PDF documents: String parameter "Signer".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT1   7

Select a string for the appearance stream of PDF documents: String parameter "Text1".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT2   8

Select a string for the appearance stream of PDF documents: String parameter "Text2".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT3   9

Select a string for the appearance stream of PDF documents: String parameter "Text3".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT4   10

Select a string for the appearance stream of PDF documents: String parameter "Text4".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT5   11

Select a string for the appearance stream of PDF documents: String parameter "Text5".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT6   12

Select a string for the appearance stream of PDF documents: String parameter "Text6".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT7   13

Select a string for the appearance stream of PDF documents: String parameter "Text7".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT8   14

Select a string for the appearance stream of PDF documents: String parameter "Text8".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#define SIGNDOC_SIGNATUREPARAMETERS_TEXTITEM_TEXT9   15

Select a string for the appearance stream of PDF documents: String parameter "Text9".

See also:
SIGNDOC_SignatureParameters_addTextItem(), SIGNDOC_SignatureParameters_setString()
#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_TIMESTAMPHASHALGORITHM_DEFAULT   0

Hash Algorithm to be used for RFC 3161 timestamps: Default value.

Use the same hash algorithm as used for the document hash.

The hash algorithm requested for the document hash will be used for the time stamp even if the document hash falls back to SHA-1 (see SIGNDOC_SIGNATUREPARAMETERS_DETACHEDHASHALGORITHM_DEFAULT).

Used for integer parameter "TimeStampHashAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA1   1

Hash Algorithm to be used for RFC 3161 timestamps: SHA-1.

Used for integer parameter "TimeStampHashAlgorithm".

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA256   2

Hash Algorithm to be used for RFC 3161 timestamps: SHA-256.

Used for integer parameter "TimeStampHashAlgorithm".

SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA256 is supported under Linux, iOS, Android, OS X, and under Windows XP SP3 and later.

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA384   3

Hash Algorithm to be used for RFC 3161 timestamps: SHA-384.

Used for integer parameter "TimeStampHashAlgorithm".

SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA384 is supported under Linux, iOS, Android, OS X, and under Windows XP SP3 and later.

See also:
SIGNDOC_SignatureParameters_setInteger()
#define SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA512   4

Hash Algorithm to be used for RFC 3161 timestamps: SHA-512.

Used for integer parameter "TimeStampHashAlgorithm".

SIGNDOC_SIGNATUREPARAMETERS_TIMESTAMPHASHALGORITHM_SHA512 is supported under Linux, iOS, Android, OS X, and under Windows XP SP3 and later.

See also:
SIGNDOC_SignatureParameters_setInteger()
#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 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_SIGNPKCS7_HASHALGORITHM_MD5   3

Hash Algorithm to be used for signature: MD5.

#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_NONE   0

Hash Algorithm to be used for signature: Invalid hash algorithm.

#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_RIPEMD160   6

Hash Algorithm to be used for signature: RIPEMD-160.

#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_SHA1   1

Hash Algorithm to be used for signature: SHA-1.

#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_SHA256   2

Hash Algorithm to be used for signature: SHA-256.

#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_SHA384   4

Hash Algorithm to be used for signature: SHA-384.

#define SIGNDOC_SIGNPKCS7_HASHALGORITHM_SHA512   5

Hash Algorithm to be used for signature: SHA-512.

#define SIGNDOC_SIGNRSA_HASHALGORITHM_RIPEMD160   5

Hash Algorithm used by SIGNDOC_SignRSA_sign(): RIPEMD-160.

#define SIGNDOC_SIGNRSA_HASHALGORITHM_SHA1   1

Hash Algorithm used by SIGNDOC_SignRSA_sign(): SHA-1.

#define SIGNDOC_SIGNRSA_HASHALGORITHM_SHA256   2

Hash Algorithm used by SIGNDOC_SignRSA_sign(): SHA-256.

#define SIGNDOC_SIGNRSA_HASHALGORITHM_SHA384   3

Hash Algorithm used by SIGNDOC_SignRSA_sign(): SHA-384.

#define SIGNDOC_SIGNRSA_HASHALGORITHM_SHA512   4

Hash Algorithm used by SIGNDOC_SignRSA_sign(): SHA-512.

#define SIGNDOC_SIGNRSA_VERSION_1_5   0

RSA version (padding) used by SIGNDOC_SignRSA_sign(): RSA 1.5 (PKCS1-v1_5).

#define SIGNDOC_SIGNRSA_VERSION_2_0   1

RSA version (padding) used by SIGNDOC_SignRSA_sign(): RSA 2.0 (OAEP).

This is used for signing TIFF documents.

#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_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_DONT_VERIFY   0
#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_RETURNCODE_INVALID_VALUE   3

Return code: The value for the parameter is invalid.

#define SIGNDOC_VERIFICATIONPARAMETERS_RETURNCODE_NOT_SUPPORTED   2

Return code: Setting the parameter is not supported.

#define SIGNDOC_VERIFICATIONPARAMETERS_RETURNCODE_OK   0

Return code: Parameter set successfully.

#define SIGNDOC_VERIFICATIONPARAMETERS_RETURNCODE_UNKNOWN   1

Return code: Unknown parameter.

#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_CHECK_REVOCATION   0x01
#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.

If this flag is set, CRLs will be tried first which has the advantage of CRLs being cacheable.

If this flag is not set, OCSP will be tried first which has the advantage of OCSP responses being usually smaller than CRLs.

See also:
SIGNDOC_VerificationParameters_setInteger(), SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_CHECK_REVOCATION, SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ENFORCE_NEXT_UPDATE, 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_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_ENFORCE_OCSP_SIGNER   0x20
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_IGNORE_NO_REVOCATION   0x200
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_NO_OCSP_NONCE   0x80
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_OFFLINE   0x08
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_ONLINE   0x40
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_USE_CRL_ONLY   0x02
#define SIGNDOC_VERIFICATIONPARAMETERS_VERIFICATIONFLAGS_USE_OCSP_ONLY   0x04
#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.

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_RETURNCODE_INVALID_ARGUMENT   SIGNDOC_DOCUMENT_RETURNCODE_INVALID_ARGUMENT

Return code: Invalid argument.

#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_NO_BIOMETRIC_DATA   SIGNDOC_DOCUMENT_RETURNCODE_NO_BIOMETRIC_DATA

Return code: No biometric data (or hash) available.

#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_NOT_SUPPORTED   SIGNDOC_DOCUMENT_RETURNCODE_NOT_SUPPORTED

Return code: Operation not supported.

#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_NOT_VERIFIED   SIGNDOC_DOCUMENT_RETURNCODE_NOT_VERIFIED

Return code: SIGNDOC_Document_verifySignature() has not been called.

#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_OK   SIGNDOC_DOCUMENT_RETURNCODE_OK

Return code: No error.

#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_PROPERTY_NOT_FOUND   SIGNDOC_DOCUMENT_RETURNCODE_PROPERTY_NOT_FOUND

Return code: Property not found.

#define SIGNDOC_VERIFICATIONRESULT_RETURNCODE_UNEXPECTED_ERROR   SIGNDOC_DOCUMENT_RETURNCODE_UNEXPECTED_ERROR

Return code: Unexpected error.

#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_HALIGNMENT_CENTER   1

Horizontal alignment: center.

#define SIGNDOC_WATERMARK_HALIGNMENT_LEFT   0

Horizontal alignment: left.

#define SIGNDOC_WATERMARK_HALIGNMENT_RIGHT   2

Horizontal alignment: 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: bottom.

#define SIGNDOC_WATERMARK_VALIGNMENT_CENTER   1

Vertical alignment: center.

#define SIGNDOC_WATERMARK_VALIGNMENT_TOP   0

Vertical alignment: top.


Typedef Documentation

typedef int SIGNDOC_Boolean

Type for boolean values.

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_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()
Todo:
list functions returning suitable pointers
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()
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()