signoAPI iOS – STSignoSigner class

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

  • signatureFieldInfoDTO

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

CGSize

The page dimension of the page or CGSizeZero, if no page is found for the transferred page number.

Usage:

CGSize pageDimension = [signoSigner getPageDimension:3];