SignDoc SDK (Java)  5.0.0
SignDocSignatureData Class Reference

Biometric data of handwritten signatures. More...

Inheritance diagram for SignDocSignatureData:

Public Member Functions

 SignDocSignatureData () throws SignDocException
 Constructor. More...
 
synchronized SignDocSignatureData clone () throws SignDocException
 Clone this object. More...
 
synchronized int getType () throws SignDocException
 Get the type of handwritten signatures stored in this object. More...
 
synchronized boolean isEmpty () throws SignDocException
 Check if this object is empty. More...
 
synchronized boolean isReference () throws SignDocException
 Check if this object contains a reference. More...
 
synchronized boolean isSignature () throws SignDocException
 Check if this object contains a single signature. More...
 
synchronized int getNumberOfSignatures () throws SignDocException
 Get the number of signatures in this object. More...
 
synchronized boolean checkReference (SignDocCheckSignatureParameters aCheckSignatureParameters, SignDocImageParameters aImageParameters) throws SignDocException
 Check biometric data of a reference for plausibility. More...
 
synchronized int getStaticQuality (SignDocImageParameters aImageParameters) throws SignDocException
 Compute the static quality of a reference. More...
 
synchronized int getDynamicQuality () throws SignDocException
 Compute the dynamic quality of a reference. More...
 
synchronized void clear () throws SignDocException
 Remove all signatures. More...
 
synchronized void addEmptySignature () throws SignDocException
 Add an empty signature. More...
 
synchronized void add (SignDocSignatureData aSource) throws SignDocException
 Add signatures from another SignDocSignatureData object. More...
 
synchronized void addFromFile (String aPath, int aFlags) throws SignDocException
 Add signatures from a file. More...
 
synchronized void addFromMemory (byte[] aBlob, int aFlags) throws SignDocException
 Add signatures from a blob. More...
 
synchronized void loadFromFile (String aPath, int aFlags) throws SignDocException
 Load (deserialize) signatures from a file. More...
 
synchronized void loadFromMemory (byte[] aBlob, int aFlags) throws SignDocException
 Load (deserialize) signatures from a blob. More...
 
synchronized byte[] saveToMemory (int aFormat) throws SignDocException
 Serialize this object to a blob. More...
 
synchronized void saveToFile (String aPath, int aFormat) throws SignDocException
 Serialize this object to a file. More...
 
synchronized void selectSignature (int aIndex) throws SignDocException
 Select a signature for most functions operating on a single signature. More...
 
synchronized int getSelectedSignature () throws SignDocException
 Get the index of the currently selected signature. More...
 
synchronized SignDocSignatureData cloneSignature (int aIndex) throws SignDocException
 Create a new SignDocSignatureData object from a single signature in this object. More...
 
synchronized int getDeviceId () throws SignDocException
 Get the capture device identifier. More...
 
synchronized void setDeviceId (int aDeviceId) throws SignDocException
 Set the capture device identifier. More...
 
synchronized int getDeviceMaxPressure () throws SignDocException
 Get the maximum pressure (force) value of the capture device. More...
 
synchronized int getDevicePressureLevels () throws SignDocException
 Get the number of pressure (force) levels supported by the capture device. More...
 
synchronized void setDeviceMaxPressure (int aDeviceMaxPressure) throws SignDocException
 Set the maximum pressure (force) value of the capture device. More...
 
synchronized int getDeviceResolution () throws SignDocException
 Get the spatial resolution of the capture device. More...
 
synchronized void setDeviceResolution (int aDeviceResolution) throws SignDocException
 Set the spatial resolution of the capture device. More...
 
synchronized int getDeviceSampleRate () throws SignDocException
 Get the sample rate (temporal resolution) of the capture device. More...
 
synchronized void setDeviceSampleRate (int aDeviceSampleRate) throws SignDocException
 Set the sample rate (temporal resolution) of the capture device. More...
 
synchronized byte[] getDeviceSerialNumber () throws SignDocException
 Get the serial number of the capture device. More...
 
synchronized void setDeviceSerialNumber (byte[] aDeviceSerialNumber) throws SignDocException
 Set the serial number of the capture device. More...
 
synchronized int getTimeStamp () throws SignDocException
 Get the capture time stamp. More...
 
synchronized void setTimeStamp (int aTimeStamp) throws SignDocException
 Set the capture time stamp. More...
 
synchronized int getNumberOfSamples () throws SignDocException
 Get the number of samples. More...
 
synchronized boolean hasTimeChannel () throws SignDocException
 Check if the biometric data has a time channel. More...
 
synchronized int[] getSample (int aIndex) throws SignDocException
 Get a sample as array of integers. More...
 
synchronized SignDocSignatureSample getSignDocSignatureSample (int aIndex) throws SignDocException
 Get a sample as SignDocSignatureSample object. More...
 
synchronized int getMaxP () throws SignDocException
 Compute the maximum pressure (force) value recorded in the biometric data. More...
 
synchronized int getMaxX () throws SignDocException
 Compute the maximum X coordinate recorded in the biometric data. More...
 
synchronized int getMaxY () throws SignDocException
 Compute the maximum Y coordinate recorded in the biometric data. More...
 
synchronized int getMinX () throws SignDocException
 Compute the minimum X coordinate recorded in the biometric data. More...
 
synchronized int getMinY () throws SignDocException
 Compute the minimum Y coordinate recorded in the biometric data. More...
 
synchronized int getHeight () throws SignDocException
 Compute the height of the signature. More...
 
synchronized int getWidth () throws SignDocException
 Compute the width of the signature. More...
 
synchronized void clearSamples () throws SignDocException
 Remove all samples from a signature. More...
 
synchronized void addSample (int aX, int aY, int aP) throws SignDocException
 Add a sample (without time channel). More...
 
synchronized void addSample (int aX, int aY, int aP, int aT) throws SignDocException
 Add a sample (with time channel). More...
 
synchronized void addSample (SignDocSignatureSample aSample) throws SignDocException
 Add a sample (SignDocSignatureSample object). More...
 
synchronized void addSample (int[] aSample) throws SignDocException
 Add a sample (array of integers). More...
 
synchronized void mirrorY () throws SignDocException
 Mirror signatures vertically. More...
 
synchronized int getComplexity (SignDocImageParameters aImageParameters) throws SignDocException
 Compute the complexity of a signature. More...
 
synchronized boolean checkSignature (SignDocCheckSignatureParameters aCheckSignatureParameters, SignDocImageParameters aImageParameters) throws SignDocException
 Check biometric data of a signature for plausibility. More...
 
synchronized byte[] renderAsImage (SignDocImageParameters aImageParameters, SignDocRenderOutput aOutput) throws SignDocException
 Render a signature as image (returned as a blob). More...
 
synchronized SignDocImage renderAsSignDocImage (SignDocImageParameters aImageParameters) throws SignDocException
 Render a signature as image (returned as a SignDocImage object). More...
 
synchronized SignDocMatchResult matchSignature (SignDocSignatureData aOther, SignDocMatchParameters aMatchParameters, SignDocImageParameters aImageParameters) throws SignDocException
 Match a single signature against another signature or a reference. More...
 
synchronized SignDocMatchResult matchReference (SignDocSignatureData aOther, SignDocMatchParameters aMatchParameters, SignDocImageParameters aImageParameters) throws SignDocException
 Match a reference against a single signature. More...
 
synchronized void close ()
 Destroy the underlying native object (for java.lang.AutoCloseable). More...
 

Static Public Member Functions

static SignDocSignatureData createFromFile (String aPath, int aFlags) throws SignDocException
 Create (deserialize) a SignDocSignatureData object from a file. More...
 
static SignDocSignatureData createFromMemory (byte[] aBlob, int aFlags) throws SignDocException
 Create (deserialize) a SignDocSignatureData object from a blob. More...
 

Static Public Attributes

static final int t_empty = 0
 Return value for getType(): empty. More...
 
static final int t_signature = 1
 Return value for getType(): signature. More...
 
static final int t_reference = 2
 Return value for getType(): reference. More...
 
static final int f_iso_mask_single = 0x000000ff
 Mask for blob format: formats specified by a single value. More...
 
static final int f_iso_mask_wrapper = 0x00000f00
 Mask for blob format: CBEFF wrapper. More...
 
static final int f_iso_mask_bdb = 0x0000f000
 Mask for blob format: BDB format. More...
 
static final int f_iso_mask_data = 0x000f0000
 Mask for blob format: data format. More...
 
static final int f_iso_mask_flags = 0xfff00000
 Mask for blob format: flags. More...
 
static final int f_softpro = 4
 Blob format: SOFTPRO Flatfile format for dynamic signatures and references. More...
 
static final int f_iso_19785_3_none = 0x00000000
 Blob format: No ISO/IEC 19785-3:2015 (CBEFF) wrapper. More...
 
static final int f_iso_19785_3_format2 = 0x00000200
 Blob format: Use ISO/IEC 19785-3:2015 patron format type 2 ("minimum simple byte-oriented patron format") CBEFF wrapper. More...
 
static final int f_iso_19785_3_format3 = 0x00000300
 Blob format: Use ISO/IEC 19785-3:2015 patron format type 3 ("maximum simple patron format (byte oriented) using presence bitmap") CBEFF wrapper. More...
 
static final int f_iso_19785_3_format6 = 0x00000600
 Blob format: Use ISO/IEC 19785-3:2015 patron format type 6 ("complex patron format") CBEFF wrapper. More...
 
static final int f_iso_19794_7_2007tc1 = 0x00001000
 Blob format: ISO/IEC 19794-7:2007 (with Technical Corrigendum 1) Biometric Data Block (version 1). More...
 
static final int f_iso_19794_7_2014 = 0x00002000
 Blob format: ISO/IEC 19794-7:2014 Biometric Data Block (version 2). More...
 
static final int f_iso_19794_7_full = 0x00000000
 Blob format: ISO/IEC 19794-7 full format. More...
 
static final int f_iso_flag_meters = 0x00100000
 Blob format flag: Use meters rather than millimeters for X and Y coordinates. More...
 
static final int f_iso_flag_no_fix = 0x00200000
 Blob format flag: do not attempt to automatically fix ISO-format signatures that have been written by SignWare before version 3.2.9.0. More...
 
static final int f_iso_flag_compat1 = 0x00400000
 Blob format flag: write with bug compatibility with SignWare before version 3.2.9.0. More...
 
static final int f_iso_flag_no_ext_data = 0x00800000
 Blob format flag: Omit or ignore extended data. More...
 
static final int cd_unknown = 0
 Capture device identifier: Unknown capture device. More...
 
static final int cd_intuos = 1
 Capture device identifier: Wacom Intuos. More...
 
static final int cd_mobinetix = 2
 Capture device identifier: MobiNetix. More...
 
static final int cd_graphire = 3
 Capture device identifier: Wacom Graphire. More...
 
static final int cd_bs_hesy = 4
 Capture device identifier: BS Hesy. More...
 
static final int cd_pl400 = 5
 Capture device identifier: Wacmo PL400. More...
 
static final int cd_epos = 6
 Capture device identifier: Interlink ePAD Point of Sales. More...
 
static final int cd_esig = 7
 Capture device identifier: Interlink ePad E-Signature. More...
 
static final int cd_eink = 8
 Capture device identifier: Interlink ePad-Ink E-Signature. More...
 
static final int cd_penpartner = 9
 Capture device identifier: Wacom PenPartner. More...
 
static final int cd_tabletpc = 10
 Capture device identifier: Tablet PC. More...
 
static final int cd_stepover = 11
 Capture device identifier: StepOver. More...
 
static final int cd_eid = 12
 Capture device identifier: Interlink Epad-ID. More...
 
static final int cd_mtldc = 13
 Capture device identifier: MotionTouch LegaPad LCD. More...
 
static final int cd_mtlpd = 14
 Capture device identifier: MotionTouch LegaPad. More...
 
static final int cd_epad2 = 15
 Capture device identifier: Interlink ePad II. More...
 
static final int cd_bluem = 16
 Capture device identifier: Stepover blueM II. More...
 
static final int cd_bluemlcd = 17
 Capture device identifier: Stepover blueM II with LCD. More...
 
static final int cd_tzse = 18
 Capture device identifier: Topaz tablet with LCD (and pressure). More...
 
static final int cd_epadls = 19
 Capture device identifier: Interlink EPad-LS. More...
 
static final int cd_eink2 = 20
 Capture device identifier: Interlink EPad-Ink Pro. More...
 
static final int cd_eid2 = 21
 Capture device identifier: Interlink EPad-ID Pro. More...
 
static final int cd_signpad = 22
 Capture device identifier: Wacom SignPad. More...
 
static final int cd_bamboo = 23
 Capture device identifier: Wacom Bamboo. More...
 
static final int cd_verifone_mx = 24
 Capture device identifier: Verifone MX 800 series. More...
 
static final int cd_ingenico_sc350 = 25
 Capture device identifier: Ingenico iSC350. More...
 
static final int cd_ipad = 501
 Capture device identifier: Apple iPad. More...
 
static final int cd_iphone = 502
 Capture device identifier: Apple iPhone. More...
 
static final int cd_ipod = 503
 Capture device identifier: Apple iPod. More...
 
static final int cd_olivetti_zpad_b8001 = 510
 Capture device identifier: Olivetti Graphos zPad-B8001. More...
 
static final int cd_samsung_gt_n7000 = 511
 Capture device identifier: Samsung GT-N7000. More...
 
static final int cd_htc_p510e = 512
 Capture device identifier: HTC Flyer P510e. More...
 
static final int cd_android_touch = 513
 Capture device identifier: mobilephone touch. More...
 
static final int cd_html5_capture = 514
 Capture device identifier: HTML5 capture client. More...
 
static final int cd_olivetti_graphos_a10 = 515
 Capture device identifier: Olivetti Graphos A10. More...
 
static final int cd_ensign10 = 1000
 Capture device identifier: Euronovate ENSign10. More...
 
static final int cd_vpsign = 1001
 Capture device identifier: VPSign. More...
 
static final int cd_user_first = 10000
 Capture device identifier: First user-defined device identifier. More...
 
static final int cd_user_last = 10999
 Capture device identifier: Last user-defined device identifier. More...
 

Protected Member Functions

void finalize () throws Throwable
 Finalize this object. More...
 

Detailed Description

Biometric data of handwritten signatures.

A SignDocSignatureData object holds any number of handwritten signatures:

To change the state from t_empty to t_signature, do one of these:

To change the state from t_empty to t_reference, do one of these:

To change from any state to t_empty, do this:

To change the state from t_signature to t_reference, do one of these:

To create an object of type t_signature from an object of type t_reference, do this:

The origin of the coordinate system is in the upper left corner of the capture device; X coordinates increase to the right, Y coordinates increase downwards. Note that this coordinate system differs from the coordinate system used by ISO 19794-7. Unless flag f_iso_flag_compat1 is set, the coordinate system will be transformed appropriately when reading or writing ISO 19794-7 data.

Functions for creating SignDocSignatureData objects:

Functions for getting information about a SignDocSignatureData object:

Functions for modifying a SignDocSignatureData object:

Functions for serializing and deserializing a SignDocSignatureData object:

Functions for getting information about the currently selected signature:

Functions for modifying the currently selected signature:

Other functions:

See Migrating from SignWare to SignDoc SDK.

Constructor & Destructor Documentation

Constructor.

The new SignDocSignatureData object won't contain any signature. getType() will return t_empty.

Use loadFromFile() or loadFromMemory() to load signatures. Use add(), addEmptySignature(), addFromFile(), or addFromMemory() to add signatures.

See also
add(), addFromFile(), addFromMemory(), createFromFile(), createFromMemory(), getType()

Member Function Documentation

synchronized void add ( SignDocSignatureData  aSource) throws SignDocException

Add signatures from another SignDocSignatureData object.

If this object has type t_signature and aSource has type t_signature or t_reference, this object will become a reference.

All involved signatures must have the same sample rate.

Parameters
[in]aSourceThe source object. It won't be modified.
See also
addEmptySignature(), addFromFile(), addFromMemory(), clear(), getType()
synchronized void addEmptySignature ( ) throws SignDocException

Add an empty signature.

If this object has type t_signature, it will become a reference. If this object has type t_signature or t_reference, the new empty signature will inherit the sample rate and capture device ID of the existing signature.

The new signature will be the selected signature.

See also
add()
synchronized void addFromFile ( String  aPath,
int  aFlags 
) throws SignDocException

Add signatures from a file.

If this object has type t_signature and the file contains a signature or a reference, this object will become a reference.

This function opens the file, loads signatures from the file, and closes the file.

Parameters
[in]aPathThe pathname of a file containing a serialized SignDocSignatureData object, see saveToFile().
[in]aFlagsFlags modifying the behavior of this function:
See also
add(), addFromMemory(), getType(), loadFromFile()
synchronized void addFromMemory ( byte[]  aBlob,
int  aFlags 
) throws SignDocException

Add signatures from a blob.

If this object has type t_signature and aBlob contains a signature or a reference, this object will become a reference.

Parameters
[in]aBlobA blob containing a serialized SignDocSignatureData object, see saveToMemory().
[in]aFlagsFlags modifying the behavior of this function:
See also
add(), addFromFile(), getType(), loadFromMemory()
synchronized void addSample ( int  aX,
int  aY,
int  aP 
) throws SignDocException

Add a sample (without time channel).

This function throws an exception if this object already contains a sample with time channel.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aXX coordinate.
[in]aYY coordinate.
[in]aPPressure (or force), normalized to 0 through 1023. A sample with zero aP is used for separating strokes.
See also
addEmptySignature(), clearSamples(), getDeviceSampleRate(), selectSignature()
synchronized void addSample ( int  aX,
int  aY,
int  aP,
int  aT 
) throws SignDocException

Add a sample (with time channel).

This function throws an exception if this object already contains a sample without time channel.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aXX coordinate.
[in]aYY coordinate.
[in]aPPressure (or force), normalized to 0 through 1023. A sample with zero aP is used for separating strokes.
[in]aTRelative time in milliseconds. Must not be negative. The first sample must use 0 for T. The time is relative to the timestamp set with setTimeStamp().
See also
addEmptySignature(), clearSamples(), getDeviceSampleRate(), getTimeStamp(), selectSignature(), setTimeStamp()
synchronized void addSample ( SignDocSignatureSample  aSample) throws SignDocException

Add a sample (SignDocSignatureSample object).

This function throws an exception if aSample does not have a time channel and this object already contains a sample with time channel.

This function throws an exception if aSample has a time channel and this object already contains a sample without time channel.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aSampleThe sample as SignDocSignatureSample object.
See also
addEmptySignature(), clearSamples(), getDeviceSampleRate(), getTimeStamp(), selectSignature(), setTimeStamp()
synchronized void addSample ( int[]  aSample) throws SignDocException

Add a sample (array of integers).

This function throws an exception if aSample has 3 elements and this object already contains a sample with time channel.

This function throws an exception if aSample has 4 elements and this object already contains a sample without time channel.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aSampleAn array of 3 or 4 integers:
  • X coordinate
  • Y coordinate.
  • Pressure (or force), normalized to 0 through 1023. A sample with zero pressure is used for separating strokes.
  • Relative time in milliseconds (optional). Must not be negative. The first sample must use 0 for the time. The time is relative to the timestamp set with setTimeStamp().
See also
addEmptySignature(), clearSamples(), getDeviceSampleRate(), getTimeStamp(), selectSignature(), setTimeStamp()
synchronized boolean checkReference ( SignDocCheckSignatureParameters  aCheckSignatureParameters,
SignDocImageParameters  aImageParameters 
) throws SignDocException

Check biometric data of a reference for plausibility.

The static and dynamic qualities of a reference should be equal to or greater than a certain value and the variance should be below a certain value. The individual signatures should meet or exceed a certain size and contain a certain number of different pressure levels. The complexity of the individual signatures should be equal to or greater than a certain value.

This function throws an exception if this object does not have type t_reference.

The following parameters are defined for aCheckSignatureParameters (see SignDocCheckSignatureParameters):

  • ReferenceMinSignatures (integer)
  • ReferenceMinDynamicQuality (integer)
  • ReferenceMinStaticQuality (integer)
  • ReferenceMaxDuration (integer)
  • ReferenceCheckSignatures (boolean)

Additionally, the following parameters will be used if the value of parameter "ReferenceCheckSignatures" is true:

  • SignatureMinWidth (integer)
  • SignatureMinHeight (integer)
  • SignatureMinPressureLevels (integer)
  • SignatureMinComplexity (integer)
  • SignatureMinSamples (integer)
Parameters
[in]aCheckSignatureParametersParameters for checking a reference. Default parameters will be used if this argument is null.
[in]aImageParametersParameters for rendering the signature as image, should be null for using default parameters.
Returns
true if the biometric data passes all checks, false if the biometric data fails any check.
See also
checkSignature(), getDynamicQuality(), getStaticQuality()
synchronized boolean checkSignature ( SignDocCheckSignatureParameters  aCheckSignatureParameters,
SignDocImageParameters  aImageParameters 
) throws SignDocException

Check biometric data of a signature for plausibility.

A handwritten signature should meet or exceed a certain size and contain a certain number of different pressure levels. The static qualitiy of a signature should be equal to or greater than a certain value.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

The following parameters are defined for aCheckSignatureParameters (see SignDocCheckSignatureParameters):

  • SignatureMinWidth (integer)
  • SignatureMinHeight (integer)
  • SignatureMinPressureLevels (integer)
  • SignatureMinComplexity (integer)
  • SignatureMinSamples (integer)
Parameters
[in]aCheckSignatureParametersParameters for checking a signature. Default parameters will be used if this argument is null.
[in]aImageParametersParameters for rendering the signature as image, should be null for using default parameters.
Returns
true if the biometric data passes all checks, false if the biometric data fails any check.
See also
checkReference(), getComplexity(), selectSignature()
synchronized void clear ( ) throws SignDocException

Remove all signatures.

getType() will return t_empty.

See also
add(), addFromFile(), addFromMemory(), close(), getType()
synchronized void clearSamples ( ) throws SignDocException

Remove all samples from a signature.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

See also
addEmptySignature(), addSample(), selectSignature()
synchronized SignDocSignatureData clone ( ) throws SignDocException

Clone this object.

Returns
A clone of this object.
See also
cloneSignature()
synchronized SignDocSignatureData cloneSignature ( int  aIndex) throws SignDocException

Create a new SignDocSignatureData object from a single signature in this object.

This function works for any type of SignDocSignatureData object as long as aIndex is valid. That is, there must be at least one signature.

Parameters
[in]aIndex0-based index of the signature to be cloned. Must be 0 if getType() returns t_signature.
Returns
A new SignDocSignatureData object. Modifying that object won't affect the object for which cloneSignature() was called.
See also
clone(), getNumberOfSignatures()
synchronized void close ( )

Destroy the underlying native object (for java.lang.AutoCloseable).

After calling this function, all methods but close() will throw SignDocUnexpectedErrorException.

See also
add(), addFromFile(), addFromMemory(), clear(), getType()
static SignDocSignatureData createFromFile ( String  aPath,
int  aFlags 
) throws SignDocException
static

Create (deserialize) a SignDocSignatureData object from a file.

This function opens the file, loads signatures from the file, and closes the file.

Parameters
[in]aPathThe pathname of a file containing a serialized SignDocSignatureData object, see saveToFile().
[in]aFlagsFlags modifying the behavior of this function:
See also
createFromMemory(), loadFromFile(), getType()
static SignDocSignatureData createFromMemory ( byte[]  aBlob,
int  aFlags 
) throws SignDocException
static

Create (deserialize) a SignDocSignatureData object from a blob.

Parameters
[in]aBlobA blob containing a serialized SignDocSignatureData object, see saveToMemory().
[in]aFlagsFlags modifying the behavior of this function:
See also
createFromFile(), loadFromMemory(), getType()
void finalize ( ) throws Throwable
protected

Finalize this object.

Do not call this method unless you know what you are doing.

synchronized int getComplexity ( SignDocImageParameters  aImageParameters) throws SignDocException

Compute the complexity of a signature.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aImageParametersParameters for rendering the signature as image, should be null for using default parameters.
Returns
The complexity of the signature in the range 0 (most simple) through 100 (most complex).
See also
checkSignature(), selectSignature()
synchronized int getDeviceId ( ) throws SignDocException

Get the capture device identifier.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The capture device identifier, see cd_unknown and others.
See also
getDeviceSerialNumber(), selectSignature(), setDeviceId()
synchronized int getDeviceMaxPressure ( ) throws SignDocException

Get the maximum pressure (force) value of the capture device.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Note
The range of pressure (force) values recorded in the samples is always 0 through 1023.
Some capture device drivers record the number of pressure (force) values rather than the maxium pressure (force) value, that is, they make this function report a value that is off by one. See getDevicePressureLevels() which tries to work around that problem.
Returns
The maximum pressure (force) value of the capture device.
See also
getDevicePressureLevels(), getMaxP(), selectSignature(), setDeviceMaxPressure()
synchronized int getDevicePressureLevels ( ) throws SignDocException

Get the number of pressure (force) levels supported by the capture device.

Some capture device drivers record the number of pressure (force) values rather than the maxium pressure (force) value, that is, they getDeviceMaxPressure() report a value that is off by one. This function (getDevicePressureLevels()) tries to work around that problem. It either returns the same value as getDeviceMaxPressure() (if that value looks wrong) or that value plus one (if that value looks good).

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Note
The range of pressure (force) values recorded in the samples is always 0 through 1023.
Returns
The number of pressure (force) values supported by the capture device.
See also
getDeviceMaxPressure(), getMaxP(), selectSignature(), setDeviceMaxPressure()
synchronized int getDeviceResolution ( ) throws SignDocException

Get the spatial resolution of the capture device.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The spatial resolution of the device in 1/inch. This value is used for the X and Y coordinates.
See also
selectSignature(), setDeviceResolution()
synchronized int getDeviceSampleRate ( ) throws SignDocException

Get the sample rate (temporal resolution) of the capture device.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The number of samples per second or 0 if the biometric data has a time channel.
See also
selectSignature(), setDeviceSampleRate()
synchronized byte [] getDeviceSerialNumber ( ) throws SignDocException

Get the serial number of the capture device.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Note
Most capture devices do not have a serial number.
Returns
The serial number as an array of bytes, empty if the capture device does not have a serial number.
See also
getDeviceId(), selectSignature(), setDeviceSerialNumber()
synchronized int getDynamicQuality ( ) throws SignDocException

Compute the dynamic quality of a reference.

This function throws an exception if this object does not have type t_reference.

The dynamic quality should be at least 80 for a reference to be valid.

Returns
The dynamic quality in the range 0 (bad) through 100 (very good).
See also
checkReference(), getStaticQuality()
synchronized int getHeight ( ) throws SignDocException

Compute the height of the signature.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The maximum Y coordinate minus the minimum Y coordinate (samples with positive pressure (force) value only), zero if there are no samples with positive pressure (force) value.
See also
getSample(), getMaxY(), getMinY(), getWidth(), selectSignature()
synchronized int getMaxP ( ) throws SignDocException

Compute the maximum pressure (force) value recorded in the biometric data.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The maximum pressure (force) value (0 through 1023), zero if there are no samples.
See also
getSample(), getDeviceMaxPressure(), getDevicePressureLevels()
synchronized int getMaxX ( ) throws SignDocException

Compute the maximum X coordinate recorded in the biometric data.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The maximum X coordinate (samples with positive pressure (force) value only), zero if there are no samples with positive pressure (force) value.
See also
getSample(), getHeight(), getMaxY(), getMinX(), getMinY(), getWidth(), selectSignature()
synchronized int getMaxY ( ) throws SignDocException

Compute the maximum Y coordinate recorded in the biometric data.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The maximum Y coordinate (samples with positive pressure (force) value only), zero if there are no samples with positive pressure (force) value.
See also
getSample(), getHeight(), getMaxX(), getMinX(), getMinY(), getWidth(), selectSignature()
synchronized int getMinX ( ) throws SignDocException

Compute the minimum X coordinate recorded in the biometric data.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The minimum X coordinate (samples with positive pressure (force) value only), zero if there are no samples with positive pressure (force) value.
See also
getSample(), getHeight(), getMaxX(), getMaxY(), getMinY(), getWidth(), selectSignature()
synchronized int getMinY ( ) throws SignDocException

Compute the minimum Y coordinate recorded in the biometric data.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The minimum Y coordinate (samples with positive pressure (force) value only), zero if there are no samples with positive pressure (force) value.
See also
getSample(), getHeight(), getMaxX(), getMaxY(), getMinX(), getWidth(), selectSignature()
synchronized int getNumberOfSamples ( ) throws SignDocException

Get the number of samples.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The number of samples.
See also
getSample(), getSignDocSignatureSample(), selectSignature()
synchronized int getNumberOfSignatures ( ) throws SignDocException

Get the number of signatures in this object.

References contain two or more signatures, objects of type t_signature contain one signature, objects of type t_empty contain zero signatures.

Returns
The number of signatures.
See also
cloneSignature(), getType(), selectSignature()
synchronized int [] getSample ( int  aIndex) throws SignDocException

Get a sample as array of integers.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aIndexThe 0-based index of the sample.
Returns
The sample at the specified index. The array will have either 3 or 4 elements:
  • X coordinate
  • Y coordinate
  • pressure (or force), normalized to 0 through 1023. A sample with zero pressure is used for separating strokes
  • relative time in milliseconds (optional).
See also
getNumberOfSamples(), getSignDocSignatureSample(), hasTimeChannel(), selectSignature()
synchronized int getSelectedSignature ( ) throws SignDocException

Get the index of the currently selected signature.

Returns
The index of the currently selected signature or -1 if no signature is selected.
See also
selectSignature()
synchronized SignDocSignatureSample getSignDocSignatureSample ( int  aIndex) throws SignDocException

Get a sample as SignDocSignatureSample object.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aIndexThe 0-based index of the sample.
Returns
The sample at the specified index.
See also
getNumberOfSamples(), getSample(), hasTimeChannel(), selectSignature()
synchronized int getStaticQuality ( SignDocImageParameters  aImageParameters) throws SignDocException

Compute the static quality of a reference.

This function matches all signatures of the reference aginst all signatures of the reference using the static matching engine and returns the smallest match quality.

It is highly recommended to check the static quality if you intend to use the static matching engine. The result is the greater the more similar the signatures of the reference are.

This function throws an exception if this object does not have type t_reference.

Parameters
[in]aImageParametersParameters for rendering the signature as image, should be null for using default parameters.
Returns
The smallest static match quality encountered (0 through 100).
See also
checkReference(), getDynamicQuality()
synchronized int getTimeStamp ( ) throws SignDocException

Get the capture time stamp.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The capture time in seconds since 1970-01-01T00:00Z or zero if the time stamp is not available.
See also
getDeviceSerialNumber(), selectSignature(), setTimeStamp()
synchronized int getType ( ) throws SignDocException

Get the type of handwritten signatures stored in this object.

Returns
The type of handwritten signatures stored in this object:
See also
getNumberOfSignatures(), isEmpty(), isReference(), isSignature(), t_empty, t_signature, t_reference
synchronized int getWidth ( ) throws SignDocException

Compute the width of the signature.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Returns
The maximum X coordinate minus the minimum X coordinate (samples with positive pressure (force) value only), zero if there are no samples with positive pressure (force) value.
See also
getSample(), getHeight(), getMaxX(), getMinX(), selectSignature()
synchronized boolean hasTimeChannel ( ) throws SignDocException

Check if the biometric data has a time channel.

This function returns false if this object has type t_empty or if this object has type t_reference and no signature has been selected with selectSignature().

Returns
true iff the biometric data has a time channel.
See also
getSample(), getNumberOfSamples(), selectSignature()
synchronized boolean isEmpty ( ) throws SignDocException

Check if this object is empty.

Returns
true iff getType() returns t_empty.
See also
getType(), isReference(), isSignature()
synchronized boolean isReference ( ) throws SignDocException

Check if this object contains a reference.

Returns
true iff getType() returns t_reference.
See also
getType(), isEmpty(), isSignature()
synchronized boolean isSignature ( ) throws SignDocException

Check if this object contains a single signature.

Returns
true iff getType() returns t_signature.
See also
getType(), isEmpty(), isReference()
synchronized void loadFromFile ( String  aPath,
int  aFlags 
) throws SignDocException

Load (deserialize) signatures from a file.

This function is equivalent to clear() followed by addFromFile().

Parameters
[in]aPathThe pathname of a file containing a serialized SignDocSignatureData object, see saveToFile().
[in]aFlagsFlags modifying the behavior of this function:
See also
add(), addFromFile(), createFromFile(), getType(), loadFromMemory()
synchronized void loadFromMemory ( byte[]  aBlob,
int  aFlags 
) throws SignDocException

Load (deserialize) signatures from a blob.

This function is equivalent to clear() followed by addFromMemory().

Parameters
[in]aBlobA blob containing a serialized SignDocSignatureData object, see saveToMemory().
[in]aFlagsFlags modifying the behavior of this function:
See also
add(), addFromMemory(), createFromMemory(), getType(), loadFromFile()
synchronized SignDocMatchResult matchReference ( SignDocSignatureData  aOther,
SignDocMatchParameters  aMatchParameters,
SignDocImageParameters  aImageParameters 
) throws SignDocException

Match a reference against a single signature.

This function throws an exception if this object does not have type t_reference.

If aOther has type t_reference, selectSignature() must have been called at least once for aOther to select the signature to match against.

matchReference() matches a reference against a single signature, matchSignature() matches a single signature against a single signature or a reference.

The license must allow comparing signatures.

Note
This function is not symmetric: if aOther has type t_reference, only one signature in that reference will be matched against this reference.
Parameters
[in]aOtherThe signature to match against.
[in]aMatchParametersParameters controlling how signature are matched. If this argument is null, all parameters will be set to their respective default value.
[in]aImageParametersParameters controlling how signature are rendered as images for static matching. If this argument is null, all parameters will be set to their respective default value. String parameter "Format" will be ignored.
Returns
The match result.
See also
matchSignature(), selectSignature(), SignDocImage.matchReference()
synchronized SignDocMatchResult matchSignature ( SignDocSignatureData  aOther,
SignDocMatchParameters  aMatchParameters,
SignDocImageParameters  aImageParameters 
) throws SignDocException

Match a single signature against another signature or a reference.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object does not have type t_signature or t_reference.

matchSignature() matches a single signature against a single signature or a reference, matchReference() matches a reference against a single signature.

The license must allow comparing signatures.

Note
This function is not symmetric: if this object has type t_reference, only one signature in that reference will be matched against aOther. On the other hand, if aOther has type t_reference, all signatures in that reference will be matched against.
Only the static matching engine can match a single signature against a single signature.
Parameters
[in]aOtherThe signature or reference to match against.
[in]aMatchParametersParameters controlling how signature are matched. If this argument is null, all parameters will be set to their respective default value.
[in]aImageParametersParameters controlling how signature are rendered as images for static matching. If this argument is null, all parameters will be set to their respective default value. String parameter "Format" will be ignored.
Returns
The match result.
See also
matchReference(), selectSignature(), SignDocImage.matchSignature()
synchronized void mirrorY ( ) throws SignDocException

Mirror signatures vertically.

The signatures are mirrored such that for each signature the range of Y coordinates is not changed.

There is no function for mirroring a single signature of a reference.

synchronized byte [] renderAsImage ( SignDocImageParameters  aImageParameters,
SignDocRenderOutput  aOutput 
) throws SignDocException

Render a signature as image (returned as a blob).

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

The following parameter in aImageParameters is mandatory:

  • Format (string)

There are three ways to specify the size of the image:

  • Set integer parameter "Resolution". This requires the spatial resolution of the capture device to be correctly recorded (see getDeviceResolution()). Coordinates will be scaled such that the resulting image will have the specified resolution. Floating-point parmateter "Zoom" must not be set. If integer parameter "Width" or "Height" (or both) are set, the resolution will be reduced (if needed) such that the image width or height (or both) won't exceed the specified values.
  • Set integer parameters "Width" or "Height" parameter (or both). Integer parameter "Resolution" and floating-point parameter "Zoom" must not be set. Coordinates will be scaled such that the with or height (or both) of the image won't exceed the specified sizes.
  • Set floating-point parameter "Zoom". Convert sample coordinates to image coordinates by multiplying them with the specified number. If integer parameter "Resolution" is set, the image resolution will be set to the specified value (but that value won't affect scaling). Integer parameters "Width" and "Height" must not be set.

The license must allow rendering signatures.

Parameters
[in]aImageParametersParameters controlling how the signature is rendered.
[out]aOutputThe image size will be stored here. You can pass null if you don't need the image size. This argument must not be null for raw format.
Returns
The image as a blob.
See also
getHeight(), getWidth(), renderAsSignDocImage(), selectSignature()
synchronized SignDocImage renderAsSignDocImage ( SignDocImageParameters  aImageParameters) throws SignDocException

Render a signature as image (returned as a SignDocImage object).

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

See renderAsImage() for details. String parameter "Format" is ignored by this function.

The license must allow rendering signatures.

Parameters
[in]aImageParametersParameters controlling how the signature is rendered.
Returns
The new SignDocImage object.
See also
renderAsImage(), selectSignature()
synchronized void saveToFile ( String  aPath,
int  aFormat 
) throws SignDocException

Serialize this object to a file.

Empty objects can be serialized only if aFormat is f_softpro.

Parameters
[in]aPathThe pathname of the file to be created or overwritten.
[in]aFormatFormat to be used: either f_softpro or a combination (bitwise or) of up to one constant from each of the following three groups: For some formats, you can additionally include (bitwise or) these flags:
See also
addFromFile(), loadFromFile(), saveToMemory()
synchronized byte [] saveToMemory ( int  aFormat) throws SignDocException

Serialize this object to a blob.

Empty objects can be serialized only if aFormat is f_softpro.

Parameters
[in]aFormatFormat to be used: either f_softpro or a combination (bitwise or) of up to one constant from each of the following three groups: For some formats, you can additionally include (bitwise or) these flags:
Returns
A blob containing a serialized version of this object.
See also
addFromMemory(), loadFromMemory(), saveToFile()
synchronized void selectSignature ( int  aIndex) throws SignDocException

Select a signature for most functions operating on a single signature.

If this object contains a single signature (getType() returns t_signature), selectSignature() need not be called. If this object contains a multiple signatures (getType() returns t_reference), selectSignature() must be called before any of these functions can be used:

The following functions also have an effect on what signature is selected:

Parameters
[in]aIndex0-based index of the signature to be selected or -1 to make no signature selected.
See also
addEmptySignature(), addSample(), clear(), clearSamples(), cloneSignature(), getComplexity(), getDeviceId(), getDeviceMaxPressure(), getDevicePressureLevels(), getDeviceResolution(), getDeviceSampleRate(), getDeviceSerialNumber(), getHeight(), getMaxP(), getMaxX(), getMaxY(), getMinX(), getMinY(), getNumberOfSamples(), getNumberOfSignatures(), getSample(), getSelectedSignature(), getSignDocSignatureSample(), getTimeStamp(), getWidth(), hasTimeChannel(), loadFromFile(), loadFromMemory(), matchReference(), matchSignature(), renderAsImage(), renderAsSignDocImage(), setDeviceId(), setDeviceMaxPressure(), setDeviceResolution(), setDeviceSampleRate(), setDeviceSerialNumber(), setTimeStamp()
synchronized void setDeviceId ( int  aDeviceId) throws SignDocException

Set the capture device identifier.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aDeviceIdThe new capture device identifier, see cd_unknown and others.
See also
getDeviceId(), selectSignature(), setDeviceSerialNumber()
synchronized void setDeviceMaxPressure ( int  aDeviceMaxPressure) throws SignDocException

Set the maximum pressure (force) value of the capture device.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Note
The range of pressure (force) values recorded in the samples is always 0 through 1023.
Parameters
[in]aDeviceMaxPressureThe new maximum pressure (force) value of the capture device.
See also
getMaxPressure(), selectSignature()
synchronized void setDeviceResolution ( int  aDeviceResolution) throws SignDocException

Set the spatial resolution of the capture device.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aDeviceResolutionThe new device resolution in 1/inch. This value is used for the X and Y coordinates.
See also
getDeviceResolution(), selectSignature()
synchronized void setDeviceSampleRate ( int  aDeviceSampleRate) throws SignDocException

Set the sample rate (temporal resolution) of the capture device.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aDeviceSampleRateThe new number of samples per second or 0 if the biometric data has a time channel.
See also
getDeviceSampleRate(), selectSignature()
synchronized void setDeviceSerialNumber ( byte[]  aDeviceSerialNumber) throws SignDocException

Set the serial number of the capture device.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aDeviceSerialNumberThe new serial number as array of 0 through 20 bytes.
See also
getDeviceSerialNumber(), selectSignature(), setDeviceId()
synchronized void setTimeStamp ( int  aTimeStamp) throws SignDocException

Set the capture time stamp.

If this object has type t_reference, selectSignature() must be called once before this function.

This function throws an exception if this object has type t_empty.

Parameters
[in]aTimeStampThe capture time in seconds since 1970-01-01T00:00Z or zero if the time stamp is not available.
See also
getTimeStamp(), selectSignature()

Member Data Documentation

final int cd_android_touch = 513
static

Capture device identifier: mobilephone touch.

Android touch device.

final int cd_bamboo = 23
static

Capture device identifier: Wacom Bamboo.

final int cd_bluem = 16
static

Capture device identifier: Stepover blueM II.

Stepover blueM II tablet without LCD.

final int cd_bluemlcd = 17
static

Capture device identifier: Stepover blueM II with LCD.

final int cd_bs_hesy = 4
static

Capture device identifier: BS Hesy.

final int cd_eid = 12
static

Capture device identifier: Interlink Epad-ID.

final int cd_eid2 = 21
static

Capture device identifier: Interlink EPad-ID Pro.

final int cd_eink = 8
static

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

final int cd_eink2 = 20
static

Capture device identifier: Interlink EPad-Ink Pro.

final int cd_ensign10 = 1000
static

Capture device identifier: Euronovate ENSign10.

final int cd_epad2 = 15
static

Capture device identifier: Interlink ePad II.

final int cd_epadls = 19
static

Capture device identifier: Interlink EPad-LS.

final int cd_epos = 6
static

Capture device identifier: Interlink ePAD Point of Sales.

final int cd_esig = 7
static

Capture device identifier: Interlink ePad E-Signature.

final int cd_graphire = 3
static

Capture device identifier: Wacom Graphire.

final int cd_htc_p510e = 512
static

Capture device identifier: HTC Flyer P510e.

final int cd_html5_capture = 514
static

Capture device identifier: HTML5 capture client.

final int cd_ingenico_sc350 = 25
static

Capture device identifier: Ingenico iSC350.

final int cd_intuos = 1
static

Capture device identifier: Wacom Intuos.

final int cd_ipad = 501
static

Capture device identifier: Apple iPad.

final int cd_iphone = 502
static

Capture device identifier: Apple iPhone.

final int cd_ipod = 503
static

Capture device identifier: Apple iPod.

final int cd_mobinetix = 2
static

Capture device identifier: MobiNetix.

final int cd_mtldc = 13
static

Capture device identifier: MotionTouch LegaPad LCD.

final int cd_mtlpd = 14
static

Capture device identifier: MotionTouch LegaPad.

MotionTouch LegaPad tablet without LDC.

final int cd_olivetti_graphos_a10 = 515
static

Capture device identifier: Olivetti Graphos A10.

final int cd_olivetti_zpad_b8001 = 510
static

Capture device identifier: Olivetti Graphos zPad-B8001.

final int cd_penpartner = 9
static

Capture device identifier: Wacom PenPartner.

final int cd_pl400 = 5
static

Capture device identifier: Wacmo PL400.

final int cd_samsung_gt_n7000 = 511
static

Capture device identifier: Samsung GT-N7000.

final int cd_signpad = 22
static

Capture device identifier: Wacom SignPad.

STU-300, STU-500, etc.

final int cd_stepover = 11
static

Capture device identifier: StepOver.

final int cd_tabletpc = 10
static

Capture device identifier: Tablet PC.

Integrated Tablet PC capture device.

final int cd_tzse = 18
static

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

Topaz LCD SE.

final int cd_unknown = 0
static

Capture device identifier: Unknown capture device.

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

final int cd_user_first = 10000
static

Capture device identifier: First user-defined device identifier.

final int cd_user_last = 10999
static

Capture device identifier: Last user-defined device identifier.

final int cd_verifone_mx = 24
static

Capture device identifier: Verifone MX 800 series.

final int cd_vpsign = 1001
static

Capture device identifier: VPSign.

final int f_iso_19785_3_format2 = 0x00000200
static

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

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

Deprecated:
Patron format type 2 has been deprecated in ISO/IEC 19785-3:2015, please use f_iso_19794_7_2014 with f_iso_19785_3_none.
final int f_iso_19785_3_format3 = 0x00000300
static

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

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

Deprecated:
Patron format type 3 has been deprecated in ISO/IEC 19785-3:2015, please use f_iso_19794_7_2014 with f_iso_19785_3_none.
final int f_iso_19785_3_format6 = 0x00000600
static

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

This can be used with f_iso_19794_7_2007tc1 or f_iso_19794_7_2014. Both signatures and references can be saved with this patron format.

Deprecated:
Patron format type 6 has been deprecated in ISO/IEC 19785-3:2015, please use f_iso_19794_7_2014 with f_iso_19785_3_none.
final int f_iso_19785_3_none = 0x00000000
static

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

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

Note
This is the default value for the CBEFF wrapper as the value of this constant is zero.
Compact format (not yet implemented) requires a CBEFF wrapper.
final int f_iso_19794_7_2007tc1 = 0x00001000
static

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

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

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

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

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

You can include flag f_iso_flag_no_ext_data to omit extended data.

final int f_iso_19794_7_2014 = 0x00002000
static

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

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

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

final int f_iso_19794_7_full = 0x00000000
static

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

To be used with either f_iso_19794_7_2007tc1 or f_iso_19794_7_2014.

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

Note
This is the default value for the data format as the value of this constant is zero.
final int f_iso_flag_compat1 = 0x00400000
static

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

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

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

These bugs have been fixed in SignWare 3.2.9.0.

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

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

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

This flag is ignored for non-ISO formats.

See also
f_iso_flag_meters, f_iso_flag_no_fix
final int f_iso_flag_meters = 0x00100000
static

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

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

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

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

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

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

This flag is ignored for non-ISO formats.

See also
f_iso_flag_compat1, f_iso_flag_no_fix
final int f_iso_flag_no_ext_data = 0x00800000
static

Blob format flag: Omit or ignore extended data.

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

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

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

This flag is ignored for non-ISO formats.

See also
f_iso_flag_compat1
final int f_iso_flag_no_fix = 0x00200000
static

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

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

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

These bugs have been fixed in SignWare 3.2.9.0.

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

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

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

This flag is ignored for non-ISO formats.

See also
f_iso_flag_compat1, f_iso_flag_meters
final int f_iso_mask_bdb = 0x0000f000
static

Mask for blob format: BDB format.

final int f_iso_mask_data = 0x000f0000
static

Mask for blob format: data format.

final int f_iso_mask_flags = 0xfff00000
static

Mask for blob format: flags.

final int f_iso_mask_single = 0x000000ff
static

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

final int f_iso_mask_wrapper = 0x00000f00
static

Mask for blob format: CBEFF wrapper.

final int f_softpro = 4
static

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

See also
saveToMemory(), saveToFile()
final int t_empty = 0
static

Return value for getType(): empty.

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

final int t_reference = 2
static

Return value for getType(): reference.

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

final int t_signature = 1
static

Return value for getType(): signature.

SignDocSignatureData objects of this type contain exactly one handwritten signature.


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