Signature
The signature element is a special inkControl element, which is stored in the ink format "ISF (Ink Serialized Format)" by Microsoft.
For security and legal reasons the HybridForms App advises an encryption of the stored data. Unless a certificate is provided as part of your form definition a notification will appear each time a user signs.
You can store your signaure data unencrypted, but in case of taking advantage of this security feature, please follow the instruction of the HFSQL Server administration guide, capitel 7 βBiometric Signature Dataβ for creating the necessary certificate or contact your HFSQL Server administrator.
<div id="repair_customer_sign"
data-win-control="HFWinJSCtrl.Signature"
data-win-options="{
label: 'Customer\'s signature',
required: true,
tooltip: 'Sign here!',
clearButton: true,
saveTimeout: 10,
openInOverlay: {
type: 'mobile',
rotateToLandscape: true
},
printMetadata: true,
printMetadataParts: ['Location', 'Signer', 'ItemID', 'DateTime']
}">
</div>

Signature
Instead of coding a "signingAsCallback" function you can also use the alternative option to fill in the signer's name:
<div id="repair_customer_sign"
data-win-control="HFWinJSCtrl.Signature"
data-win-options="{
label: 'Customer\'s signature',
...,
signingFromFields: ['tab1_first_name', 'tab1_last_name'],
...
}"></div>
FormControl Optionsβ
backgroundβ
background: {{HFFormPath}}/signature-background.png'string' | 'none'clearButtonβ
clearButton: truebooleantruedisabledβ
disabled: truebooleandoNotCopyβ
doNotCopy: truebooleanforceUnsafeβ
forceUnsafe: truebooleanhighAccuracyLocationβ
highAccuracyLocation: truebooleantruelocationRequestTimeoutβ
locationRequestTimeout: 5number10onChangedβ
onChanged: HFFormdefinition.Namespace.Methodfunctionfunction(value: boolean) => voidopenInOverlayβ
OverlayObjectprintMetadataβ
printMetadata: truebooleantrueprintMetadataPartsβ
- Location: The coords will be added to the signature graphics. If no "Location" is contained in the printMetadata array, the location will not be collected.
- Signer: The signer's name will be added to the signature graphics.
- ItemID: A SHA256 base64 encoded checksum of the form data is added to the signature graphics.
- DateTime: The time stamp will be added to the signature graphics.
printMetadataParts: ['Location', 'Signer', 'ItemID', 'DateTime']('Location' | 'Signer' | 'ItemID' | 'DateTime')[]['Location', 'ItemID', 'DateTime']saveTimeoutβ
saveTimeout: 10integer5signingAsCallbackβ
signingAsCallback: HFFormdefinition.Namespace.getSignerfunctionfunction() => anysigningFromFieldsβ
signingFromFields: ['fieldId_01', 'fieldId_02']string[]stampβ
StampObjecttooltipβ
tooltip: 'Sign here!'stringtooltipTemplateβ
tooltipTemplate: 'example_control_tooltip'stringOverlay Objectβ
type - requiredβ
type: 'always' / 'mobile''never' | 'always' | 'mobile'rotateToLandscapeβ
rotateToLandscape: falsebooleantrueStamp Objectβ
url - requiredβ
url: '{{HFFormPath}}/stamp-image.png'stringalphaβ
alpha: 0.2numberStored dataβ
{
"id": "repair_customer_sign",
"value": true
}
{
"id": "repair_customer_sign_HFInkImage",
"value": "repair_customer_sign.png"
}
{
"id": "repair_customer_sign_HFSignatureZip",
"value": "repair_customer_sign.zip"
}
{
"id": "repair_customer_sign_HFSignatureMetadata",
"value": {
"timestamp": "2018-07-03T14:37:01.802Z",
"geoposition": {
"latitude": 47.06734,
"longitude": 15.43349,
"accuracy": 20,
"accuracyFormatted": "~ 20 m",
"timestamp": "2018-07-03T14:36:51.292Z"
},
"signer": "Robert Simon",
"eventCounter": 190,
"itemid": "84395929-b38e-1a9f-ffac-b97ef6c9b4f2",
"formHash":"ZH82iLfZEfaxtceMMTECCRmwMOjZrB3ERm5tynSegPY=",
"timeunit": "milliseconds",
"input": "mouse"
}
}