The STSignoSigner class is a significant part of libSignoPDFSigner. This class is used to load and edit PDF documents without displaying them and offers the option of signing the signature fields. All properties and methods of this class can also be used with the STSignoViewController class if the document should also be displayed.
@interface STSignoSigner : NSObject
Usage:
STSignoSigner *signoSigner = [[STSignoSigner alloc] init];
Some methods return an integer, which can be used to identify errors. The possible error codes are listed in the table below:
|
Error code |
Description |
|---|---|
|
-100 |
Unable to load the document. |
|
-101 |
The keyword ‘signer’ was not found. |
|
-102 |
The keyword ‘sgnsignature_N’ could not be interpreted. |
|
-103 |
The keyword ‘sgnsignaturekw_N’ or ‘sgnsignaturekw_rN’ could not be interpreted. |
|
-104 |
Error when reading an SGN keyword. |
|
-105 |
Error when reading an SGN value. |
|
-106 |
Error when generating a signature field defined by ‘sgnsignature_N’. |
|
-107 |
Error when generating a signature field defined by ‘sgnsignaturekw_rN’. |
|
-108 |
Error when generating a signature field defined by ‘sgnsignaturekw_N’. |
|
-109 |
Internal error. |
|
-110 |
Unable to generate the signature field. |
|
-112 |
Unable to generate the signature field on the desired page. |
|
-113 |
A form or signature field with the same name already exists. |
|
-115 |
The signature field has already been signed. |
|
-116 |
The coordinates of the signature field lie outside of the visible area. |
|
-140 |
No SignData was transferred. |
|
-141 |
No signature image was transferred. |
|
-160 |
No image was transferred. |
|
-161 |
Unable to insert the image. |
|
-162 |
The size of the image is not permitted. |
|
-163 |
Unable to insert the image on the required page. |
|
-164 |
The image data is invalid or the format of the image is not supported. |
|
-165 |
The coordinates of the image lie outside of the visible area. |
|
-167 |
A transparent image cannot be inserted into a PDF/A-1b-compliant document. |
|
-181 |
The document has already been signed. |
|
-182 |
The app does not have any usage rights for the camera. |
|
-183 |
This error code is returned by the methods that make changes to the viewer when the desired action cannot be carried out because the viewer is in notes mode. |
|
-200 |
The document was not loaded. The API method should be called after the method or . |
|
-201 |
A recorded note cannot be added to the PDF because the viewer is not in notes mode. |
|
-202 |
This error code is returned when notes mode is started up if the current document is a PDF/A-1b document. Inserting images with an alpha channel, which is needed for notes mode, would breach PDF/A-1b conformity, so the process is cancelled. |
setLicenseKey: method
This method can be used to enable the libSignoPDFSigner component and, in so doing, to remove the demo message. Please use the licence string that was given to you by your contact at signotec.
ℹ️ Please note: This method can only be used for licence keys in the old format. If you have a licence key in the new UUID format (XXXXXXXX–XXXX–XXXX–XXXX–XXXXXXXXXXXX), please use the STLicenceManager class.
+(void)setLicenseKey:(NSString*)key
|
Parameter |
Description |
|---|---|
|
(NSString*)key |
Licence string |
|
Return value |
Description |
|
- |
- |
Usage:
[STSignoSigner setLicenseKey:@"1234"];
signoInfoDelegate property
This property can be used to set the instance that implements the STSignoInfoDelegate class and thus that should be informed of events in the STSignoSigner.
@property (nonatomic, assign) id signoInfoDelegate
|
Property |
Description |
|---|---|
|
id signoInfoDelegate |
- |
|
Return value |
Description |
|
- |
- |
Usage:
signoSigner.signoInfoDelegate = self;
timeStampDateFormatter property
This property can be used to set an instance of the NSDateFormatter class. This makes it possible to visually add a time stamp with the signature to the document. If no instance of this class is created and set, no time stamp is added to the document. This must be set before is called.
@property (nonatomic, strong) NSDateFormatter* timeStampDateFormatter
|
Property |
Description |
|---|---|
|
NSDateFormatter* timeStampDateFormatter |
- |
|
Return value |
Description |
|
- |
- |
Usage:
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle: NSDateFormatterFullStyle];
signoSigner.timeStampDateFormatter = dateFormatter;
timeStampColor property
This property allows the colour of the time stamp in the signature image to be configured. If the property is not set, black is used by default.
@property (nonatomic, strong) UIColor* timeStampColor
|
Property |
Description |
|---|---|
|
UIColor* timeStampColor |
- |
|
Return value |
Description |
|
- |
- |
Usage:
signoSigner.timeStampColor = [UIColor blueColor];
signFieldBackground property
This property can contain an image that is added to a signature field behind the rendered signature. The image is made flush with the upper-right corner of the signature field and scaled to the height or width of the field depending on the aspect ratio. The property must be changed at the latest before calling acceptSignature: in the method, in order to be taken into account for the current signature. If it contains nil, no background image is added.
@property (nonatomic, strong) UIImage* signFieldBackground
|
Property |
Description |
|---|---|
|
UIImage* signFieldBackground |
- |
|
Return value |
Description |
|
- |
- |
Usage:
signoSigner.signFieldBackground = myImage;
digitalSignatureMaxLength property
This property contains the maximum length of the digital signature in bytes. This amount of space is retained in the document during preparation for signing. If the signature is longer than the defined length, the document cannot be signed.
@property (nonatomic, assign) NSInteger digitalSignatureMaxLength
|
Property |
Description |
|---|---|
|
NSInteger digitalSignatureMaxLength |
- |
|
Return value |
Description |
|
- |
- |
Usage:
signoSigner.digitalSignatureMaxLength = 16384;
loadDocumentFromFile: method
This method loads a PDF document and interprets any SGN keywords it may contain.
ℹ️ Please note: If this method is called from within, the document will be displayed immediately after loading.
-(int)loadDocumentFromFile:(NSData*)document
|
Parameter |
Description |
|
|---|---|---|
|
(NSData*)document |
The document to be loaded, as a byte array. |
|
|
Return value |
Description |
|
|
int |
0 |
wurde erfolgreich ausgeführt. method |
|
|
< 0 |
An error occurred (see above). |
Usage:
int ret = [signoSigner loadDocumentFromFile:document];
if (ret < 0) {
// error handling
}
getDocumentMetaData method
This method reads the document’s metadata.
-(NSString*)getDocumentMetaData
|
Parameter |
Description |
|---|---|
|
- |
- |
|
Return value |
Description |
|
NSString* |
‘Metadata’ entry from the ‘Document Catalog’ |
Usage:
NSString* metaData = [signoSigner getDocumentMetaData];
getDocumentMetaDataFromFile: method
This method reads the document’s metadata without affecting any of the existing instances of the STSignoSigner class.
+(NSString*)getDocumentMetaDataFromFile:(NSData*)document
|
Parameter |
Description |
|---|---|
|
(NSData*)document |
The document as a byte array. |
|
Return value |
Description |
|
NSString* |
‘Metadata’ entry from the ‘Document Catalog’ |
Usage:
NSString* metaData = [STSignoSigner getDocumentMetaDataFromFile:document];
setCertificates:signingCertificate:biometricCertificate: method
This method is deprecated and is only included for compatibility reasons. Please use -[STCertificateManager setCertificates:withSigningPrivateKey:biometricX509Certificate:] instead or another suitable method from the STCertificateManager class.
setCertificates:signCertPassword:biometricCertificate: method
This method is deprecated and is only included for compatibility reasons. Please use -[STCertificateManager setCertificates:withPKC12Password:biometricX509Certificate:] instead or another suitable method from the STCertificateManager class.
createNewSignatureField: method
This method generates a new, empty signature field.
-(int)createNewSignatureField:(STSignatureFieldInfoDTO*)signatureField
|
Parameter |
Description |
|
|---|---|---|
|
(STSignatureFieldInfoDTO*) signatureField |
Object that contains the properties of the new field. |
|
|
Return value |
Description |
|
|
int |
0 |
wurde erfolgreich ausgeführt. method |
|
|
< 0 |
An error occurred (see above). |
Usage:
int ret = [signoSigner createNewSignatureField:signatureField];
if (ret < 0)
{
// error handling
}
getSignatureInfo method
This method is deprecated and is only included for compatibility reasons. Please use instead the method
getFormFieldsInfo method
This method is deprecated and is only included for compatibility reasons. Please use instead the method
getFormFields: method
This method can be used to retrieve information about the form fields contained within the document.
-(NSMutableArray*)getFormFields:(FormFieldTypeOptions)formFieldTypeOptions
|
Parameter |
Description |
|---|---|
|
(FormFieldTypeOptions) formFieldTypeOptions |
A bitmask type defined with NS_OPTIONS (NSUInteger) that represents the combinable types of form fields. See . |
|
Return value |
Description |
|
NSMutableArray* |
A list with one object or one object of the class that is derived from the class, for each form field, or an empty list if the document does not contain any form fields that correspond to the form field types searched for. |
Usage:
NSMutableArray *sigFields = [signoSigner getFormFields:FormFieldTypeSignature];
NSMutableArray *textFields = [signoSigner getFormFields:FormFieldTypeText];
NSMutableArray *textAndButtonFields = [signoSigner getFormFields:(FormFieldTypeText | FormFieldTypeButton)];
NSMutableArray *editableFields = [signoSigner getFormFields:FormFieldTypeEditableFields];
NSMutableArray *allFields = [signoSigner getFormFields:FormFieldTypeAll];
getFormFieldsInfoFromFile: method
This method is deprecated and is only included for compatibility reasons. Please use instead the method
getSignatureInfoFromFile: method
This method is deprecated and is only included for compatibility reasons. Please use instead the method
getFormFieldsFromFile: formFieldTypeOptions method
This method can be used to retrieve information about the form fields contained within the document without affecting any of the existing instances of the STSignoSigner class.
+(NSMutableArray*)getFormFieldsFromFile:(NSData*)document formFieldTypeOptions:(FormFieldTypeOptions)formFieldTypeOptions
|
Parameter |
Description |
|---|---|
|
(NSData*)document |
The document as a byte array. |
|
(FormFieldTypeOptions) formFieldTypeOptions |
A bitmask type defined with NS_OPTIONS (NSUInteger) that represents the combinable types of form fields. See . |
|
Return value |
Description |
|
NSMutableArray* |
A list with one object or one object of the class that is derived from the class, for each form field, or an empty list if the document does not contain any form fields that correspond to the form field types searched for. |
Usage:
NSMutableArray* formFields = [STSignoSigner getFormFieldsFromFile:document formFieldTypeOptions: FormFieldTypeEditableFields];
setFormFieldsInfo: method
This method can be used to change the content and ‘read only’ property of form fields.
-(void)setFormFieldsInfo:(NSMutableArray*)fields
|
Parameter |
Description |
|---|---|
|
(NSMutableArray*) fields |
Form fields whose properties are to be changed, as an array of objects. Only the name, value and readOnly properties of the objects are currently evaluated. |
|
Return value |
Description |
|
- |
- |
Usage:
NSMutableArray* editableFormFields = [signoSigner getFormFields: FormFieldTypeEditableFields];
for (* editableFormField in editableFormFields)
{
if ([editableFormField.name isEqualToString: @"MyField"])
{
editableFormField.value = @"My value";
editableFormField.readOnly = YES;
}
}
[signoSigner setFormFieldsInfo: editableFormFields];
setFormFieldsInfo:toFile: method
This method can be used to change the content and ‘read only’ property of form fields.
+(NSData*)setFormFieldsInfo:(NSMutableArray*)fields toFile:(NSData*)document
|
Parameter |
Description |
|---|---|
|
(NSMutableArray*) fields |
Form fields whose properties are to be changed, as an array of objects. Only the name, value and readOnly properties of the objects are currently evaluated. |
|
(NSData*)document |
The document as a byte array. |
|
Return value |
Description |
|
NSData* |
The changed document as a byte array. |
Usage:
NSMutableArray* editableFormFields = [STSignoSigner getFormFields:doc formFieldTypeOptions: FormFieldTypeEditableFields];
for (STFormFieldInfo* editableFormField in editableFormFields)
{
if ([editableFormField.name isEqualToString: @"MyField"])
{
editableFormField.value = @"My value";
editableFormField.readOnly = YES;
}
}
NSData* changedDoc = [STSignoSigner setFormFieldsInfo: editableFormFields toFile:doc];
getPreviewImages:withWidth: method
This method can be used to retrieve the individual pages of the loaded document in the form of images.
-(NSMutableArray*)getPreviewImages:(NSArray*)pages withWidth:(int)width
|
Parameter |
Description |
|---|---|
|
(NSArray*)pages |
Array with the numbers of the pages that need to be rendered. Numbers that are greater than the number of pages are ignored. The first page number of the document begins with 1. |
|
(int)width |
Width of the page thumbnails in pixels; 100 is used when an invalid value is transferred. |
|
Return value |
Description |
|
NSMutableArray* |
Page thumbnails as an array of UIImage objects (the order corresponds to the order of the pages parameter) or nil. |
Usage:
NSArray* pages = @[@1, @2];
NSMutableArray* previewImages = [signoSigner getPreviewImages:pages withWidth:100];
signSignatureField:withSignData:andImage method
This method can be used to sign a specific signature field with a signature that was captured separately. A signature consisting of the biometric data and the image of the signature may be captured with the STSignatureCaptureViewController, for example.
(int)signSignatureField:(NSString*)signatureFieldName withSignData:(NSData*)signData andImage:(NSData*)image
|
Parameter |
Description |
|
|---|---|---|
|
(NSString*) signatureFieldName |
The name of the signature field that is to be signed; the field must not be signed already. If the document does not contain a field with this name, a new field will be inserted on page 1 with the coordinates (0, 0, 0, 0). |
|
|
(NSData*)signData |
Byte array with the biometric data, as returned by [STSignatureCaptureViewController getSignData]. |
|
|
(NSData*)image |
Byte array with the image of the signature, as returned by [STSignatureCaptureViewController getSignatureImage:height:penColor:penWidth:]. |
|
|
Return value |
Description |
|
|
int |
0 |
wurde erfolgreich ausgeführt. method |
|
|
< 0 |
An error occurred (see also |
|
). |
|
|
Usage:
NSData* signData = [signoCaptureVC getSignData];
NSData* image = [signoCaptureVC getSignatureImage:800 height:600 pencolor:[UIColor blueColor] penWidth:5.0];
int ret = [signoSigner signSignatureField:@"test_signature" withSignData:signData andImage:image];
if (ret < 0)
{
// error handling
}
signDocument:withExternalSigning: method
This method adds a digital signature to the document without a signature capture process being required. Depending on the value of the externalSigning parameter, the private key and the certificate for signing must have been transferred beforehand using the method or; the transferred biometric certificate is ignored in any case.
(int)signDocument:(NSString*)signatureFieldName withExternalSigning:(BOOL)externalSigning
|
Parameter |
Description |
|
|---|---|---|
|
(NSString*) signatureFieldName |
The name of the signature field that is to be signed; the field must not be signed already. If the document does not contain a field with this name, a new field will be inserted on page 1 with the coordinates (0, 0, 0, 0). |
|
|
(BOOL)externalSigning |
YES |
The signature should be calculated outside of the API; see also . |
|
|
NO |
The key transferred using setCertificates should be used to calculate the signature. |
|
Return value |
Description |
|
|
int |
0 |
wurde erfolgreich ausgeführt. method |
|
|
< 0 |
An error occurred (see also |
|
). |
|
|
Usage:
int ret = [signoSigner signDocument:@"final_doc_signature" withExternalSigning:NO];
if (ret < 0)
{
// error handling
}
getDocumentAsFile method
This method returns the document in its current state.
-(NSData*)getDocumentAsFile
|
Parameter |
Description |
|---|---|
|
- |
- |
|
Return value |
Description |
|
NSData* |
The document as a byte array |
Usage:
NSData* doc = [signoSigner getDocumentAsFile];
appendPage:document:images method
This method can be used to append an empty page to a document and to insert images on this page (optional).
+(NSData*)appendPage:(STRectDTO*)size document:(NSData*)document images:(NSArray*)images
|
Parameter |
Description |
|---|---|
|
(STRectDTO*)size |
The size of the new page. |
|
(NSData*)document |
The document as a byte array. |
|
(NSArray*)images |
An array of STImageDTO objects. May be nil, in which case no images are added. |
|
Return value |
Description |
|
NSData* |
The changed document as a byte array. |
Usage:
STRectDTO* size = [[STRectDTO alloc] init];
size.rectangle = CGRectMake(0, 0, 210, 297);
size.unit = UnitMillimetres;
STImageDTO* image = [[STImageDTO alloc] init];
Image.image = myImage;
Image.size = size;
NSArray* images = @[image];
NSData* changedDoc = [STSignoSigner appendPage:size document:document images:images];
appendPages:document:pages:images method
This method can be used to append several empty pages to a document and to insert images on this page (optional).
+(NSData*)appendPages:(STRectDTO*)size document:(NSData*)document pages: (int)pages images:(NSArray*)images
|
Parameter |
Description |
|---|---|
|
(STRectDTO*)size |
The size of the new pages. |
|
(NSData*)document |
The document as a byte array. |
|
(int)pages |
The number of pages to be appended. |
|
(NSArray*)images |
An array of STImageDTO objects. May be nil, in which case no images are added. |
|
Return value |
Description |
|
NSData* |
The changed document as a byte array. |
Usage:
STRectDTO* size = [[STRectDTO alloc] init];
size.rectangle = CGRectMake(0, 0, 595, 842);
size.unit = UnitMillimetres;
STImageDTO* image = [[STImageDTO alloc] init];
Image.image = myImage;
Image.size = size;
NSArray* images = @[image];
NSData* changedDoc = [STSignoSigner appendPages:size document:document pages:2 images:images];
createDocument:pages:compliance:images method
This method can be used to generate a document from empty pages and insert images on the pages (optional).
+(NSData*)createDocument:(STRectDTO*)size pages:(int)pages compliance:(enum PdfACompliance)compliance images:(NSArray*)images
|
Parameter |
Description |
|---|---|
|
(STRectDTO*)size |
The size of the new page. |
|
(int)pages |
The number of pages. |
|
(enum PdfACompliance) compliance |
PDF/A Compliance |
|
(NSArray*)images |
An array of STImageDTO objects. May be nil, in which case no images are added. |
|
Return value |
Description |
|
NSData* |
The generated document as a byte array. |
The PdfACompliance enumeration is defined in the STPDFACompliance class as follows:
typedef enum PdfACompliance { None, PdfA1b, PdfA3b } pdfACompliance;
|
Value |
Description |
|---|---|
|
None |
No PDF/A Compliance |
|
PdfA1b |
PDF/A1b Compliance |
|
PdfA3b |
PDF/A3b Compliance |
Usage:
STRectDTO* rectDTO = [[STRectDTO alloc] init];
rectDTO.rectangle = CGRectMake(0, 0, 210, 297);
rectDTO.unit = UnitMillimetres;
STImageDTO* image = [[STImageDTO alloc] init];
image.image = myImage;
image.rectangle = rectDTO;
image.page = 1;
NSArray* images = @[image];
NSData* createdDoc = [STSignoSigner createDocument:size pages:3 compliance:PdfA1b images:images]
addImages: method
This method can be used to insert images into the loaded document.
-(int)addImages:(NSMutableArray*)images
|
Parameter |
Description |
|
|---|---|---|
|
(NSMutableArray*) images |
An array of STImageDTO objects. May be nil, in which case no images are added. |
|
|
Return value |
Description |
|
|
int |
0 |
wurde erfolgreich ausgeführt. method |
|
|
< 0 |
An error occurred (see above). |
Usage:
STRectDTO* rectDTO = [[STRectDTO alloc] init];
rectDTO.rectangle = CGRectMake(0, 0, 210, 297);
rectDTO.unit = UnitMillimetres;
STImageDTO* image = [[STImageDTO alloc] init];
image.image = myImage;
image.rectangle = size;
image.page = 1;
NSMutableArray* images = @[image];
int result = [signoSigner addImages:images]:
startTextSearch:inPage:highlightColor:onlyWholeWord:caseSensitive method
This method searches for text on a PDF page, visually highlights all the places where the text was found (only in the class) and returns the positions of all these places.
-(NSMutableArray*)startTextSearch:(NSString*)text inPage:(int)page highlightColor:(UIColor*)highlightColor onlyWholeWord:(BOOL)onlyWholeWord caseSensitive:(BOOL)caseSensitive
|
Parameter |
Description |
|
|---|---|---|
|
(NSString*)text |
Text to search for. |
|
|
(int)page |
Page on which to search for the text. The first page number of the document begins with 1. |
|
|
(UIColor*) highlightColor |
Background colour of the rectangle that visually highlights the search text found in the PDF viewer. If nil is passed, no highlighting is shown. |
|
|
(BOOL)onlyWholeWord |
YES |
Only finds whole words. |
|
|
NO |
Finds all occurrences. |
|
(BOOL)caseSensitive |
YES |
The search is case-sensitive. |
|
|
NO |
The search is not case-sensitive. |
|
Return value |
Description |
|
|
NSMutableArray* |
The positions of all the places where the text was found as an array of CGRect structure or an empty array. |
|
Usage:
NSMutableArray *foundedTexts = [signoSigner startTextSearch:"@Signature" inPage:1 highlightColor:nil onlyWholeWord:YES caseSensitive:YES];
for (NSValue* value in foundedTexts)
{
CGRect rect = [value CGRectValue];
SignatureFieldInfoDTO *field = [SignatureFieldInfoDTO alloc] init];
field.name = "@New_Signature";
field.page = 1;
field.isSigned = false;
field.rectangle = rect;
int result = [signoSigner createNewSignatureField:field];
}
startTextSearch:inPage:highlightColor:primaryMatchColor:onlyWholeWord:caseSensitive method
This method searches for text on a PDF page, visually highlights all the places where the text was found (only in the class) and returns the positions of all these places. Unlike the method, this also enables the entire document to be searched, and the first result is highlighted differently.
-(NSMutableArray*)startTextSearch:(NSString*)text inPage:(int)page highlightColor:(UIColor*)highlightColor primaryMatchColor:(UIColor*)primaryMatchColor onlyWholeWord:(BOOL)onlyWholeWord caseSensitive:(BOOL)caseSensitive
|
Parameter |
Description |
|
|---|---|---|
|
(NSString*)text |
Text to search for. |
|
|
(int)page |
> 0 |
Page on which to search for the text. The first page number of the document begins with 1. |
|
|
0 |
The text is searched for throughout the entire document. |
|
(UIColor*) highlightColor |
Background colour of the rectangle that visually highlights the search text found in the PDF viewer. If nil is passed, no highlighting is shown. |
|
|
(UIColor*) primaryMatchColor |
Colour used to visually highlight only the first search result that is found differently than with the highlightColor. If nil is passed, no highlighting is shown. |
|
|
The method can then be used to highlight the next or the last result. |
|
|
|
(BOOL)onlyWholeWord |
YES |
Only finds whole words. |
|
|
NO |
Finds all occurrences. |
|
(BOOL)caseSensitive |
YES |
The search is case-sensitive. |
|
|
NO |
The search is not case-sensitive. |
|
Return value |
Description |
|
|
NSMutableArray* |
The positions of all the places where the text was found as an array of CGRect structure or an empty array. |
|
Usage:
NSMutableArray *foundedTexts = [signoSigner startTextSearch:"@Signature" inPage:1 highlightColor:nil primaryMatchColor:nil onlyWholeWord:YES caseSensitive:YES];
for (NSValue* value in foundedTexts)
{
CGRect rect = [value CGRectValue];
SignatureFieldInfoDTO *field = [SignatureFieldInfoDTO alloc] init];
field.name = "@New_Signature";
field.page = 1;
field.isSigned = false;
field.rectangle = rect;
int result = [signoSigner createNewSignatureField:field];
}
setSignatureFieldInfo: method
This method can be used to add the signature details such as the location of the signature, the reason for signing, and the contact information of the signer to a digital signature. This method is generally called in the method, or before the method.
-(void)setSignatureFieldInfo:(*)signatureFieldInfoDTO
|
Parameter |
Description |
|---|---|
|
An object |
|
Return value |
Description |
|
- |
- |
Usage:
STSignatureFieldInfoDTO* signatureFieldInfoDTO = [STSignatureFieldInfoDTO alloc] init];
signatureFieldInfoDTO.name = @"My Signature";
signatureFieldInfoDTO.location = @"My Location";
signatureFieldInfoDTO.reason = @"My Reason";
signatureFieldInfoDTO.contactInfo = @"info@company.com";
[signoSigner setSignatureFieldInfo: signatureFieldInfoDTO];
getPreviewImages:ofPages:withWidth: method
This method can be used to retrieve the individual pages of a document in the form of images.
+(NSMutableArray*)getPreviewImages:(NSData*)document ofPages(NSArray*)pages withWidth:(int)width
|
Parameter |
Description |
|---|---|
|
(NSData*)document |
The document as a byte array. |
|
(NSArray*)pages |
Array with the numbers of the pages that need to be rendered. Numbers that are greater than the number of pages are ignored. The first page number of the document begins with 1. |
|
(int)width |
Width of the page thumbnails in pixels; 100 is used when an invalid value is transferred. |
|
Return value |
Description |
|
NSMutableArray* |
Page thumbnails as an array of UIImage objects (the order corresponds to the order of the pages parameter) or nil. |
Usage:
NSArray* pages = @[@1, @2];
NSData* document = ..
NSMutableArray* previewImages = [STSignoSigner getPreviewImages:document ofPages:pages withWidth:100];
isDocumentModified method
This method can be used to check whether the loaded document has been changed.
-(BOOL)isDocumentModified
|
Parameter |
Description |
|
|---|---|---|
|
- |
- |
|
|
Return value |
Description |
|
|
BOOL |
YES |
The document has been changed. |
|
|
NO |
The document has not been changed. |
Usage:
BOOL documentState = [signoSigner isDocumentModified];
releaseSignoSigner method
This method can be used to release the generated instance of the STSignoSigner class. It should always be called when an instance is no longer needed.
-(void)releaseSignoSigner
|
Parameter |
Description |
|---|---|
|
- |
- |
|
Return value |
Description |
|
- |
- |
Usage:
[signoSigner releaseSignoSigner];
hasCertificates method
This method is deprecated and is only included for compatibility reasons. This method can be used to check whether the keys and certificates for encrypting the biometric data and for signing the document were sent using one of the methods or .
-(BOOL)hasCertificates
|
Parameter |
Description |
|
|---|---|---|
|
- |
- |
|
|
Return value |
Description |
|
|
BOOL |
YES |
The keys and certificates for encrypting the biometric data and for signing the document are present. |
|
|
NO |
The keys and certificates for encrypting the biometric data and for signing the document are not present. |
Usage:
BOOL hasCertificates = [signoSigner hasCertificates];
unloadDocument method
With this method, the document last loaded with the loadDocumentFromFile method can be unloaded. This method should be called before a new document is loaded at the latest.
-(void)unloadDocument
|
Parameter |
Description |
|---|---|
|
- |
- |
|
Return value |
Description |
|
- |
- |
Usage:
[signoSigner unloadDocument];
getPageCount method
This method returns the number of pages of the loaded document.
-(int)getPageCount
|
Parameter |
Description |
|---|---|
|
- |
- |
|
Return value |
Description |
|
int |
The number of pages. |
Usage:
int pagesNumber = [signoSigner getPageCount];
getPageDimension: method
This method returns the page dimension of a specific page of the document.
-(CGSize)getPageDimension:(int)pageNr
|
Parameter |
Description |
|---|---|
|
(int)pageNr |
The page number. |
|
Return value |
Description |
|
The page dimension of the page or CGSizeZero, if no page is found for the transferred page number. |
Usage:
CGSize pageDimension = [signoSigner getPageDimension:3];