Classes
-
The
AnalysisViewController
provides a custom analysis screen which shows the upload and analysis activity. The user should have the option of canceling the process by navigating back to the review screen.Note
Component API only.Declaration
Swift
@objcMembers public final class AnalysisViewController : UIViewController
-
Undocumented
See moreDeclaration
Swift
@objcMembers public class AnalysisResult : NSObject
-
Undocumented
See moreDeclaration
Swift
@objcMembers public final class CameraViewController : UIViewController
-
Errors thrown when running a custom validation.
See moreDeclaration
Swift
@objc public class CustomDocumentValidationError : NSError
-
Undocumented
See moreDeclaration
Swift
public class CustomDocumentValidationResult : NSObject
-
Undocumented
See moreDeclaration
Swift
public final class DocumentPickerCoordinator : NSObject
extension DocumentPickerCoordinator: UIDocumentPickerDelegate
extension DocumentPickerCoordinator: UIDropInteractionDelegate
-
The
GiniConfiguration
class allows customizations to the look and feel of the Gini Capture SDK. If there are limitations regarding which API can be used, this is clearly stated for the specific attribute.Note
Text can also be set by using the appropriate keys in aLocalizable.strings
file in the projects bundle. The library will prefer whatever value is set in the following order: attribute in configuration, key in strings file in project bundle, key in strings file inGiniCapture
bundle.Note
Images can only be set by providing images with the same filename in an assets file or as individual files in the projects bundle. The library will prefer whatever value is set in the following order: asset file in project bundle, asset file inGiniCapture
bundle.Attention
If there are conflicting pairs of image and text for an interface element (e.g.navigationBarCameraTitleCloseButton
) the image will always be preferred, while making sure the accessibility label is set.Declaration
Swift
@objc public final class GiniConfiguration : NSObject
-
Undocumented
See moreDeclaration
Swift
final public class GiniImageDocument : NSObject, GiniCaptureDocument
extension GiniImageDocument: NSItemProviderReading
-
Undocumented
See moreDeclaration
Swift
final public class GiniPDFDocument : NSObject, GiniCaptureDocument
extension GiniPDFDocument: NSItemProviderReading
-
A Gini Capture document made from a QR code.
The Gini Capture SDK supports the following QR code formats:
- Bezahlcode (http://www.bezahlcode.de).
- Stuzza (AT) and GiroCode (DE) (https://www.europeanpaymentscouncil.eu/document-library/guidance-documents/quick-response-code-guidelines-enable-data-capture-initiation).
- EPS E-Payment (https://eservice.stuzza.at/de/eps-ueberweisung-dokumentation/category/5-dokumentation.html).
Declaration
Swift
@objc final public class GiniQRCodeDocument : NSObject, GiniCaptureDocument
-
Convenience class to interact with the Gini Capture SDK.
The Gini Capture SDK provides views for capturing, reviewing and analysing documents.
By integrating this library in your application you can allow your users to easily take a picture of a document, review it and - by implementing the necessary callbacks - upload the document for analysis to the Gini Bank API.
The Gini Capture SDK can be integrated in two ways, either by using the Screen API or the Component API. The Screen API provides a fully pre-configured navigation controller for easy integration, while the Component API provides single view controllers for advanced integration with more freedom for customization.
Important
When using the Component API we advise you to use a similar flow as suggested in the Screen API. Use theCameraViewController
as an entry point with theOnboardingViewController
presented on top of it. After capturing let the user review the document with theReviewViewController
and finally present theAnalysisViewController
while the user waits for the analysis results.Declaration
Swift
@objc public final class GiniCapture : NSObject
-
The
GiniCaptureDocumentBuilder
provides a way to build aGiniCaptureDocument
from aData
object and aDocumentSource
. Additionally theDocumentImportMethod
can bet set after builder iniatilization. This is an example of how aGiniCaptureDocument
should be built when it has been imported with the Open with feature.
See morelet documentBuilder = GiniCaptureDocumentBuilder(data: data, documentSource: .appName(name: sourceApplication)) documentBuilder.importMethod = .openWith let document = documentBuilder.build() do { try document?.validate() ... } catch { ... }
Declaration
Swift
public class GiniCaptureDocumentBuilder : NSObject
-
Undocumented
See moreDeclaration
Swift
public final class GiniCaptureDocumentValidator
-
The
See moreHelpMenuViewController
provides explanations on how to take better pictures, how to use the Open with feature and which formats are supported by the Gini Capture SDK.Declaration
Swift
final public class HelpMenuViewController : UITableViewController
-
The
See moreImageAnalysisNoResultsViewController
provides a custom no results screen which shows some capture suggestions when there is no results when analysing an image.Declaration
Swift
public final class ImageAnalysisNoResultsViewController : UIViewController
extension ImageAnalysisNoResultsViewController: UICollectionViewDataSource
extension ImageAnalysisNoResultsViewController: UICollectionViewDelegateFlowLayout
-
Undocumented
See moreDeclaration
Swift
public final class MultipageReviewViewController : UIViewController
extension MultipageReviewViewController: UICollectionViewDataSource
extension MultipageReviewViewController: UICollectionViewDelegateFlowLayout
-
Custom view to easily create onboarding pages which can then be used in
OnboardingViewController
. Simply pass an image and a name. Both will be beautifully aligned and displayed to the user.Note
The text length should not exceed 50 characters, depending on the font used, and should preferably stretch out over three lines.Declaration
Swift
@objcMembers public final class OnboardingPage : UIView
-
The
OnboardingViewController
provides a custom onboarding screen which presents some introductory screens to the user on how to get the camera in a perfect position etc. By default, three screens are pre-configured.To allow displaying the onboarding as a transparent modal view, set the
modalPresentationStyle
of the container class to.OverCurrentContext
. Add a blank page at the end to make it possible to “swipe away” the onboarding. To achieve this, the container class needs to implementUIScrollViewDelegate
and dismiss the view when the last (empty) page is reached. With theUIScrollViewDelegate
callbacks it is also possible to add a custom page control and update the current page accordingly.Use the
OnboardingPage
class to quickly create custom onboarding pages in a nice consistent design. See below how easy it is to present an custom onboarding view controller.let pages = [ OnboardingPage(image: myOnboardingImage1, text: "My Onboarding Page 1"), OnboardingPage(image: myOnboardingImage2, text: "My Onboarding Page 2"), OnboardingPage(image: myOnboardingImage3, text: "My Onboarding Page 3") OnboardingPage(image: myOnboardingImage4, text: "My Onboarding Page 4") ] let onboardingController = OnboardingViewController(pages: pages, scrollViewDelegate: self) presentViewController(onboardingController, animated: true, completion: nil)
Note
Component API only.Declaration
Swift
@objcMembers public final class OnboardingViewController : UIViewController
-
The
ReviewViewController
provides a custom review screen. The user has the option to check for blurriness and document orientation. If the result is not satisfying, the user can either return to the camera screen or rotate the photo by steps of 90 degrees. The photo should be uploaded to Gini’s backend immediately after having been taken as it is safe to assume that in most cases the photo is good enough to be processed further.Note
Component API only.Declaration
Swift
@objcMembers public final class ReviewViewController : UIViewController
extension ReviewViewController: UIScrollViewDelegate