Skip to main content

Changelog | iOS Document Scanner

Version 1.21.1 (13 October 2021):#

  • ๐Ÿž Bug fixes:
    • Fixes a crash in SBSDKGenericDocumentRecognizer when scanning an ID cards back side

Version 1.21.0 (12 October 2021):#

  • ๐ŸŽ‰ New:
    • Added new filter type SBSDKImageFilterTypePureGray, a grayscale filter without further optimizations.
  • ๐Ÿš€ Improvements:
    • Improved flexibility, speed, and accuracy of the EHIC Scanner (European Health Insurance Cards).
  • ๐Ÿž Bug fixes:
    • Fixed a rare bug where capturing an image on a physical device returns a dummy image. The dummy image is now only returned on simulators.
    • Fixed a bug in the layout of the status hints label in SBSDKScannerViewController on some devices.
    • Fixed a rare crash in SBSDKNFCPassportReader.
  • โš ๏ธ Breaking Changes:
    • Removed enum SBSDKHealthInsuranceCardValidationType, removed property validationType from SBSDKUIHealthInsuranceCardScannerBehaviorConfiguration, removed initWithValidationType:and all detectAndRecognizeFromImage methods from SBSDKHealthInsuranceCardRecognizer, renamed SBSDKHealthInsuranceCardDetectionStatusFailedValidationto SBSDKHealthInsuranceCardDetectionStatusIncompleteValidation and recognizeFromImageto recognizeFromStillImage resp. recognizeFromVideoFrameImage.
    • Changed the way for localizing status hints in document scanner. Old keys will not work. Instead, added new class SBSDKScannerStatusTextConfiguration for setting the status hint text in the document scanner, along with the textConfiguration parameter in SBSDKScannerViewController.
    • Changed property initializer in SBSDKUINFCPassportReaderResult from (instancetype _Nonnull )initWithDatagroupDG1:(nullable SBSDKNFCDatagroupDG1 *)dg1 datagroupDG2:(nullable SBSDKNFCDatagroupDG2 *)dg2; to (instancetype _Nonnull )initWithDatagroup1:(nullable SBSDKNFCDatagroupDG1 *)dataGroup1 datagroup2:(nullable SBSDKNFCDatagroupDG2 *)dataGroup2; and properties from datagroupDG1, datagroupDG2 and photoImageURL to dataGroup1, dataGroup2 and photoURL.
    • Changed property from submitButtonTitle to viewResultsButtonTitle in SBSDKUIGenericDocumentRecognizerTextConfiguration and SBSDKUIIDCardScannerTextConfiguration.

Version 1.20.0 (25 August 2021):#

  • ๐ŸŽ‰ New:
    • Added support for zooming in SBSDKUIBarcodesBatchScannerViewController
    • Added support for the ML based document detector without using CoreML to maintain compliance with the Android implementation, see SBSDKDocumentDetectorModeMachineLearningNoCoreML
    • Added anchorPointsColor property to SBSDKImageEditingViewController and SBSDKUICroppingScreenUIConfiguration, which allows to set color for cropping anchor handles.
    • Added stripCheckDigits parameter in SBSDKBarcodeAdditionalParameters class.
    • Added SBSDKPDFPagesExtractor class that can extract pages from a PDF as UIImages, or convert them to JPEGs and write to a specified URL.
  • โš ๏ธ Breaking Changes:
    • Added SBSDKSEPADocumentFieldTypePurpose, SBSDKSEPADocumentFieldTypeRemittance and SBSDKSEPADocumentFieldTypeInformation fields to SBSDKSEPADocumentFieldType. Removed SBSDKSEPADocumentFieldTypeReference and SBSDKSEPADocumentFieldTypeHint fields from it.
    • Added pageImageSource property to SBSDKUIPage which replaces the now deprecated isCapturedAutomatically property
  • ๐Ÿš€ Improvements:
    • Improved recognition of UPC/EAN barcodes due to ink spread
  • ๐Ÿž Bug fixes:
    • Fixed a rare bug with calling some delegate function in SBSDKUIDocumentScannerViewController too often in some cases.
    • Fixed a bug with the EHIC recognizer that caused some UTF8 characters to be ignored upon recognition

Version 1.19.3 (7 July 2021):#

  • ๐ŸŽ‰ New:
    • Added support for Swift Package Manager: you can now use the Swift Package Manager to embed ScanbotSDK into your app
  • ๐Ÿž Bug fixes
    • Fixed a bug in SBSDKGenericDocumentRecognizerViewController where results come in before the previous results were processed

Version 1.19.2 (6 July 2021):#

  • ๐ŸŽ‰ New:
    • Added support for recognition status and document image in SBSDKGenericDocumentRecognizer (see SBSDKGenericDocumentRecognitionResult)
  • โš ๏ธ Breaking Changes:
    • SBSDKGenericDocumentRecognizer and SBSDKGenericDocumentRecognizerViewControllerDelegate return SBSDKGenericDocumentRecognitionResult instead of SBSDKGenericDocument

Version 1.19.1 (1 July 2021):#

  • ๐ŸŽ‰ New:
    • Added support for Apple Silicon M1 simulators, your app build with the ScanbotSDK.xcframework or via CocoaPods now will run natively on M1 Mac simulators without having to start Xcode in Rosetta 2 mode
  • โš ๏ธ Breaking Changes:
    • The ScanbotSDK CocoaPod now contains an XCFramework instead of a standard framework, you may need to update CocoaPods and/or Xcode

Version 1.19.0 (30 June 2021):#

  • ๐ŸŽ‰ New:
    • Brand new "Next Generation" machine-learning-based barcode scanning engine with improved reliability and much faster performance
    • API changes for the new barcode engine: added engineMode property of type SBSDKBarcodeEngineMode on barcode scanning APIs like SBSDKBarcodeScanner, SBSDKBarcodeScannerViewController, and SBSDKUIBarcodesBatchScannerBehaviorConfiguration to switch between the legacy barcode engine and the new Next Generation barcode engine. By default, the new engine is used.
  • โš ๏ธ Breaking Changes:
    • Removed enableHighSensitivityMode property on SBSDKBarcodeScanner, because it is no longer needed
  • ๐Ÿš€ Improvements:
    • Improved logging for license failures. The app bundle identifier from the license and from the app will be displayed in the log in case you accidentally set up a wrong license. Also now the expiration date of expired licenses is being logged to the console.
    • More detailed Scanbot SDK module documentation
  • ๐Ÿž Bug fixes
    • Fixes a layout bug with long text on detection status labels
    • Fixes a bug in document scanner view controllers (Classic UI and Ready-to-use UI) where sometimes the energy save mode did not end properly
  • ๐Ÿš™ Under the hood:

Version 1.18.0 (9 June 2021):#

  • ๐ŸŽ‰ New:
    • New disability certificate type: SBSDKDisabilityCertificatesRecognizerFormType_1B_CUSTOM
    • Added support for MSI-Plessey barcodes again: see SBSDKBarcodeTypeMSIPlessey, MSI checksum algorithm is selectable via SBSDKBarcodeAdditionalParameters property named msiPlesseyChecksumAlgorithm, by default MSI-Plessey is disabled, you must explicitly pass SBSDKBarcodeAdditionalParameters as accepted type to any barcode scanning class
  • ๐Ÿš€ Improvements:
    • Better logging of licensing system errors, e.g. display the apps and the licenses bundle identifier
  • ๐Ÿž Bug fixes
    • Fixes a problem with UPC-A barcodes being recognized as EAN13 barcodes.

Version 1.17.1 (12 May 2021):#

  • ๐Ÿž Bug fixes
    • Fixes a localization issue in SBSDKUIGenericDocumentRecognizerViewController

Version 1.17.0 (10 May 2021):#

  • ๐ŸŽ‰ New:
    • Introduces the Generic Document Recognizer, providing the ability to scan various types of documents, including German ID cards, German passports and German driver's licenses: SBSDKGenericDocument, SBSDKGenericDocumentRecognizer, SBSDKGenericDocumentRecognizerViewController and SBSDKUIGenericDocumentRecognizerViewController
  • โš ๏ธ Breaking Changes:
    • Deprecated SBSDKIDCardRecognizer, SBSDKIDCardScannerViewController, SBSDKUIIDCardScannerViewController and related classes, please use the SBSDKGenericDocument-based API

Version 1.16.0 (21 April 2021):#

  • ๐ŸŽ‰ New:
    • Added support for zooming in SBSDKBarcodeScannerViewController and SBSDKUIBarcodeScannerViewController. Use the new properties cameraZoomRange, cameraZoomFactor, shouldAnimateZooming, doubleTapToZoomEnabled and pinchToZoomEnabled on SBSDKBarcodeScannerViewController and SBSDKUIBarcodeScannerBehaviorConfiguration to configure zooming the camera to scan small barcodes.
    • Added support for document type filtering to SBSDKUIBarcodesBatchScannerViewController
  • โš ๏ธ Breaking Changes:
    • Breaking change: SBSDKBarcodeScannerViewController: capturingFrameAspectRatio was renamed to finderAspectRatio, and capturingFrameMinimumInsetwas renamed to finderMinimumInset.
    • Breaking change: Removed SBSDKUIMachineCodeScannerConfiguration and related configurations. SBSDKUIMRZScannerViewController now uses SBSDKUIMRZScannerConfiguration and SBSDKUIBarcodeScannerViewController now uses SBSDKUIBarcodeScannerConfiguration as configurations.
  • ๐Ÿž Bug fixes
    • Fixes a bug in SBSDKScannerViewController where the default detection status label sometimes showed up although a custom status view was provided.

Version 1.15.1 (9 April 2021):#

  • ๐ŸŽ‰ New:
    • Added enableGS1Decoding parameter to SBSDKBarcodeAdditionalParameters.
    • Added image property to SBSDKMachineReadableZoneRecognizerField.
  • ๐Ÿž Bug fixes
    • Fixed a bug in SBSDKUIBarcodesBatchScannerViewController where additionalDetectionParameters have not been applied.
    • Fixed a rare bug when calculating the finder rectangle SBSDKGenericTextLineRecognizerViewController, SBSDKLicensePlateScannerViewController and SBSDKBarcodeScannerViewController.
    • Fixed the delegate calls in SBSDKUILicensePlateScannerViewController.
  • โš ๏ธ Breaking Changes:
    • Renamed property flashImageButtonHidden to flashButtonHidden in SBSDKUIDocumentScannerUIConfiguration and SBSDKUIMultipleObjectScannerUIConfiguration.
    • Removed the 2017 deprecated SBSDKCropViewController, please use SBSDKImageEditingViewControllerinstead.
  • ๐Ÿš™ Under the hood:
    • Updated OpenSSL to version 1.1.1j.

Version 1.15.0 (23 Mar 2021):#

  • ๐ŸŽ‰ New:
    • New feature: vehicle license plate scanner. The new classes are SBSDKLicensePlateScanner, SBSDKLicensePlateScannerViewController and SBSDKUILicensePlateScannerViewController.
    • Added acceptedDocumentTypes to SBSDKIDCardRecognizer, SBSDKIDCardScannerViewControllerand SBSDKUIIDCardScannerBehaviorConfiguration.
    • Added sharpnessAcceptanceFactor to SBSDKUIIDCardScannerBehaviorConfiguration.
    • Added edgeLineWidth parameter to SBSDKCropView and SBSDKImageEditingViewController.
    • Added polygonLineWidth parameter to SBSDKUICroppingScreenUIConfiguration.
    • Added support for Voice-Over in RTU-UI components of the document scanner and the cropping screen, please see SBSDKUICroppingScreenAccessibilityConfiguration and SBSDKUIDocumentScannerAccessibilityConfiguration for further info. You can customize the Voice-Over feature using the accessibilityConfiguration property in SBSDKUICroppingScreenTextConfiguration and SBSDKUIDocumentScannerTextConfiguration.
    • Added additionalParameters property to SBSDKBarcodeScanner and SBSDKUIMachineCodeScannerBehaviorConfiguration, additionalDetectionParameters to SBSDKBarcodeScannerViewController and SBSDKUIBarcodesBatchScannerBehaviorConfiguration and additionalBarcodeDetectionParameters to SBSDKScannerViewController which lets you setup a minimum and maximum text length as well as a quiet zone. Currently works for ITF barcodes only.
  • ๐Ÿž Bug fixes
    • Fixed a rare out-of-memory crash in barcode (datamatrix) scanning on older devices
    • Fixed issues with title centering in the cropping RTU-UI component.
  • ๐Ÿš€ Improvements:
    • The machine-learning-based document detector now is the default detector on iOS devices with iOS 11.2 and above.
    • Added download links for ScanbotSDK.framework and XCFramework in the Installation Guide of the documentation.

Version 1.14.1 (10 Mar 2021):#

  • ๐Ÿž Bug fixes
    • Fixed a rare crash in barcode scanner with wrong finder coordinates
  • โš ๏ธ Breaking Changes:
    • Removed support for MSI Plessey barcode detection

Version 1.14.0 (23 Feb 2021):#

  • ๐ŸŽ‰ New:
    • Added support for Swiss QR codes, see SBSDKSwissQRCodeDocumentFormat
    • Added support for document type filtering to barcode and QR code scanners, acceptedDocumentTypes properties in SBSDKBarcodeScanner, SBSDKBarcodeScannerViewController and SBSDKUIBarcodeScannerViewController
    • Added the ability to encrypt TIFF image files using the SDK encryption API, see SBSDKTiffImageWriter
    • Added global control of status bar visibility and style in SBSDKUI components, see functions + (void)setShouldShowStatusBarOnScanningScreens:(BOOL)shouldShow and + (void)setDefaultStatusBarStyle:(UIStatusBarStyle)style in the class ScanbotSDKUI
  • ๐Ÿž Bug fixes
    • Fixed a UI problem in SBSDKUIBarcodesBatchScannerViewController

Version 1.13.0 (29 Jan 2021):#

  • ๐ŸŽ‰ New:
    • Added support for PDF encryption with new public functions in SBSDKPDFRenderer, SBSDKOpticalTextRecognizer and ScanbotSDKUI: PDFs can be encrypted using SBSDKAESEncrypter or your custom written encryption classes. The PDFs data is encrypted in memory before it is written to disk. To decrpyt the PDFs you need to run proper decryption in your backend or clients.
    • SBSDKIDCardRecognizer now additionally extracts machine readable zone fields and check digits, see the new properties mrzFields and mrzCheckDigits in SBSDKIDCardRecognizerResult
  • ๐Ÿš€ Improvements:
    • Improved ID Card Recognizer with better compensation for perspective distortion
    • Changed SBSDKAESEncrypter to create the keyphrase from password using the PBKDF2 method
  • โš ๏ธ Breaking Changes:
    • - (nullable instancetype)initWithKey:(NSString *)key mode:(SBSDKAESEncrypterMode)mode was replaced by - (nullable instancetype)initWithPassword:(NSString *)password mode:(SBSDKAESEncrypterMode)mode
  • ๐Ÿž Bug fixes
    • Fixed a potential crash in SBSDKUIBarcodesBatchScannerViewController

Version 1.12.3 (17 Dec 2020):#

  • ๐Ÿš€ Improvements:
    • Improved detection of ITF barcodes

Version 1.12.2 (7 Dec 2020):#

  • ๐Ÿš€ Improvements:
    • Improved DataMatrix detection

Version 1.12.1 (2 Dec 2020):#

  • ๐ŸŽ‰ New:
    • Added new property autoCancelTimeout to SBSDKUIMachineCodeScannerBehaviorConfiguration
    • Added new optional delegate function - (void)qrBarcodeDetectionViewControllerDidTimeout:(nonnull SBSDKUIBarcodeScannerViewController *)viewController; to SBSDKUIBarcodeScannerViewController
  • ๐Ÿš€ Improvements:
    • Improved some PDF417 detection edge cases
  • ๐Ÿž Bug fixes
    • Fixed a problem where distribution of an app containing ScanbotSDK would fail
    • Fixed a crash in SBSDKUINFCPassportReaderViewController

Version 1.12.0 (26 Nov 2020):#

  • ๐ŸŽ‰ New:
    • Added (customizable) encryption/decryption to image stores; new classes: SBSDKAESEncrypter, SBSDKStorageCrypting, ScanbotSDKUI
    • For SBSDKUI components you can enable encryption for stored images globally using the function + (void)setDefaultImageStoreEncrypter:(nullable id<SBSDKStorageCrypting>)encrypter of ScanbotSDKUI class, this will encrypt all stored images in these components
    • Classic SBSDK components use SBSDKKeyedImageStorage or SBSDKIndexedImageStorage, both got a new property named encrypter.
    • SBSDKAESEncrypter provides built-in support for AES128 and AES256 encryption, but you can create your own encrypter by implementing a class conforming to the protocol SBSDKStorageCrypting
    • Added corner radius property polygonCornerRadius to document detection polygon layer in SBSDKScannerViewController
    • Added delegate method scannerController:backgroundPolygonColorForDetectionStatus: to SBSDKScannerViewControllerDelegate
    • Added ability to enable or disable crop and rotation functionality on SBSDKImageEditingViewController and RTU UI
    • Added ability to choose the binarization filter being used when storing TIFF files with SBSDKTIFFImageWriter, see binarizationFilter in SBSDKTIFFImageWriterParameters
  • ๐Ÿš€ Improvements:
    • Better recognition of rotated PDF417 codes
  • โš ๏ธ Breaking Changes:
    • Removed polygonAutoSnapProgressCornerRadius from SBSDKScannerViewController because of obsolescence. Use polygonCornerRadius instead.
    • Simplified SBSDKTIFFImageWriter API, a lot of functions have been removed because of duplication, the class now has only 2 functions left. Please refer to the documentation of this class.

Version 1.11.9 (19 Nov 2020):#

  • ๐Ÿš€ Improvements:
    • Improved barcode and PDF417 detection

Version 1.11.8 (11 Nov 2020):#

  • ๐Ÿž Bug fixes
    • Fixed a license problem in SBSDKUIWorkflowScannerViewController
    • Fixed a deadlock in SBSDKUIBarcodesBatchScannerViewController
    • Fixed a potential memory leak with SBSDKUIBarcodesBatchScannerViewController
    • The delegate function of SBSDKUIBarcodeBatchStorageDelegate- (void)barcodeBatchStorage:(SBSDKUIBarcodeBatchStorage *)storage didUpdateBarcode:(SBSDKUIBarcodeMappedResult *)barcode atIndex:(NSInteger)index; is now called on the main queue

Version 1.11.7 (29 Oct 2020):#

  • ๐Ÿš€ Improvements:
    • Improved barcode, QR code and data matrix detection

Version 1.11.6 (22 Oct 2020):#

  • ๐ŸŽ‰ New:
    • Added polygon autosnap progress animation to SBSDKScannerViewController and SBSDKUIDocumentScannerViewController
    • New properties related to this feature: polygonAutoSnapProgressColor, polygonAutoSnapProgressLineWidth, polygonAutoSnapProgressEnabled, polygonAutoSnapProgressCornerRadius
    • Added another optional function in SBSDKIDCardScannerViewControllerDelegate: - (void)idCardScannerViewController:(SBSDKIDCardScannerViewController *)controller didFailRecognition:(SBSDKIDCardRecognizerResult *)idCardResult onImage:(UIImage *)image;
  • ๐Ÿž Bug fixes
    • Potential crash in barcode recognition

Version 1.11.5 (14 Oct 2020):#

  • ๐Ÿž Bug fixes
    • Fixes call into SBSDKIDCardScannerViewControllerDelegate

Version 1.11.4 (13 Oct 2020):#

  • ๐Ÿš€ Improvements:
    • Reduced memory footprint of ID card recognizer by around 50%.

Version 1.11.3 (12 Oct 2020):#

  • ๐Ÿž Bug fixes
    • Reduced lifetime of memory intensive ID card recognizer instances to reduce memory related crashes on older devices.
  • ๐ŸŽ‰ New:
    • Added new optional function to SBSDKIDCardScannerViewControllerDelegate: - (void)idCardScannerViewControllerWillCaptureImage:(SBSDKIDCardScannerViewController *)controller;

Version 1.11.2 (6 Oct 2020):#

  • ๐Ÿž Bug fixes
    • Fixed zooming logic in some cases in Text Data Scanner RTU UI.
    • The MRZ result fields in SBSDKMachineReadableZoneRecognizerResult, when received from the recognizePersonalIdentityFromText: function, now have the confidence value set to 1.0.
  • ๐Ÿš€ Improvements:
    • ID card recognition model was updated to improve recognition results for ID cards with address changed sticker.
  • ๐ŸŽ‰ New:
    • Added function to SBSDKFinderLayer: + (CGRect)potentialFinderRectWithBounds:(CGRect)bounds aspectRatio:(double)aspectRatio minimumInsets:(UIEdgeInsets)minimumInsets;
  • โš ๏ธ Breaking Changes:
    • Removed SBSDKFilterMethodGPUOpenGL from SBSDKFilterMethod enum, because OpenGLES is deprecated for a long time now

Version 1.11.1 (30 Sep 2020):#

  • ๐Ÿž Bug fixes
    • fix font validation issue upon app submission to the app store
    • fixes inivisible finder in SBSDKGenericTextLineRecognizerViewController

Version 1.11.0 (29 Sep 2020):#

  • ๐ŸŽ‰ New:
    • NFC passport reader RTU UI component SBSDKUINFCPassportReaderViewController (requires iOS 13)
    • Text data scanner RTU UI component SBSDKUITextDataScannerViewController
    • SBSDKUICroppingViewController now has a hint label. The corresponding parameter hintTitle was added to SBSDKUICroppingScreenTextConfiguration
    • Added new delegate function to SBSDKGenericTextLineRecognizerViewController- (void)textLineRecognizerViewController:(nonnull SBSDKGenericTextLineRecognizerViewController *)controller didChangeViewFinderRect:(CGRect)rect;
    • Added new parameter: finderMinimumInset, viewFinderBackgroundColor, shouldShowWordBoxes, wordBoxesFillColor, wordBoxesLineColor, viewFinderLineColor, viewFinderLineWidth, currentViewFinderRect, shouldUseAnimationWhileZooming to SBSDKGenericTextLineRecognizerViewController
    • Added parameters preferredZoom and ocrResolutionLimit to SBSDKGenericTextLineRecognizerConfiguration
  • ๐Ÿš€ Improvements:
    • SBSDKUIIDCardScannerViewController now has improved MRZ-OCR validation. In case MRZ is scanned, its values are compared to OCR'd ones and result info is presented on details screen.
  • ๐Ÿž Bug fixes
    • Crash while scanning large Aztec codes
    • Fixed crash in cropping RTU UI related to too long hint label.
    • Fixed build error with Cocoapods
  • โš ๏ธ Breaking Changes:
    • SBSDKGenericTextLineRecognizerViewController:
    • Moved preferredFinderHeight and finderAspectRatio parameters from SBSDKGenericTextLineRecognizerViewController to SBSDKGenericTextLineRecognizerConfiguration class.
    • Changed initializer from - (nullable instancetype)initWithParentViewController:(nullable UIViewController *)parentViewController parentView:(nullable UIView *)containerView configuration:(nullable SBSDKGenericTextLineRecognizerConfiguration *)configuration preferredFinderHeight:(CGFloat)height finderAspectRatio:(double)aspectRatio delegate:(id<SBSDKGenericTextLineRecognizerViewControllerDelegate>)delegate; to - (nullable instancetype)initWithParentViewController:(nullable UIViewController *)parentViewController parentView:(nullable UIView *)containerView configuration:(nullable SBSDKGenericTextLineRecognizerConfiguration *)configuration delegate:(id<SBSDKGenericTextLineRecognizerViewControllerDelegate>)delegate;
  • ๐Ÿš™ Under the hood:
  • Deeply integrated document detector data into the framework, SBSDKDocumentDetectorData.bundle now is not longer an additional data bundle

Version 1.10.5 (23 Sep 2020):#

  • ๐ŸŽ‰ New:
    • Added NFC passport reader RTU UI component SBSDKUINFCPassportReaderViewController
    • Added Text Data scanner RTU UI component SBSDKUITextDataScannerViewController
  • ๐Ÿž Bug fixes:
    • Fixed crash while scanning large Aztec codes
  • ๐Ÿš€ Improvements:
    • Moved SBSDKDocumentDetectorData.bundle into the SDK, this is no longer an optional component

Version 1.10.4 (17 Sep 2020):#

  • ๐Ÿš€ Improvements:
    • Improved recognition of damaged DataMatrix barcodes
    • Modernized camera API usage and removed deprecated API usage, multiple new functions added to process a CVPixelBufferRef
    • Improved Disability Certificate Recognizer
  • ๐Ÿž Bug fixes:
    • Fixed potential crash in SBSDKGenericTextLineRecognizerViewController
  • โš ๏ธ Breaking Changes:
    • SBSDKMultipleObjectsDetector: - (nullable NSArray<SBSDKPolygon*>*) detectInBuffer:(nonnull CMSampleBufferRef)sampleBufferRef orientation:(AVCaptureVideoOrientation)videoOrientation; renamed to - (nullable NSArray<SBSDKPolygon*>*) detectInSampleBuffer:(nonnull CMSampleBufferRef)sampleBufferRef orientation:(AVCaptureVideoOrientation)videoOrientation;
    • SBSDKCameraSession: - (void)captureStillImageWithCompletionHandler:(nullable void (^)(CMSampleBufferRef _Nullable, NSError* _Nullable))completion; changed to - (void)captureStillImageWithCompletionHandler:(nullable void (^)(CVPixelBufferRef _Nullable, NSError* _Nullable))completion;
  • ๐Ÿš™ Under the hood:
    • Updated OpenCV to version 4.4.0

Version 1.10.3 (10 Sep 2020):#

  • ๐ŸŽ‰ New:
    • Added Data Scanner module SBSDKGenericTextLineRecognizer and SBSDKGenericTextLineRecognizerViewController
  • โš ๏ธ Breaking Changes:
    • Removed support for iOS 9 and iOS 10

Version 1.10.2 (2 Sep 2020):#

  • ๐Ÿž Bug fixes:
    • Fixed passport document number check digit assignment.

Version 1.10.1 (13 Aug 2020):#

  • ๐Ÿž Bug fixes:
    • Fixed ID card RTU UI startup crash.

Version 1.10.0 (11 Aug 2020):#

  • ๐ŸŽ‰ New:
    • Added ID Card Recognizer RTU UI component SBSDKUIIDCardScannerViewController.
    • Added Barcode batch detector RTU UI component SBSDKUIBarcodesBatchScannerViewController.
    • Beta: Added NFC Passport Scanner component SBSDKNFCPassportReader.
    • Barcode scanner: SBSDKBarcodeScannerResult class now contains rawBytes parameter.
  • ๐Ÿž Bug fixes:
    • Barcode scanner format parser fixes
    • Fixed error type in SBSDKOpticalTextRecognizer in case of cancelling operation.
  • โš ๏ธ Breaking Changes:
    • SBSDKBarcodeScannerResult initializer is now - (instancetype)initWithPolygon:(SBSDKPolygon *)poly type:(SBSDKBarcodeType *)type barcodeImage:(UIImage *)image rawTextString:(NSString *)string rawBytes:(NSData *)rawBytes;

Version 1.9.19 (29 Jul 2020):#

  • ๐Ÿž Bug fixes:
    • ID Card Scanning: fixed an issue that caused poor OCR results
    • Added missing debug symbol files

Version 1.9.18 (13 Jul 2020):#

  • ๐ŸŽ‰ New:
    • ID Card Recognizer: added support for german passports
    • Beta: New sensitive binarization image filter SBSDKImageFilterTypeSensitiveBinarization
    • Beta: Added support for MSI Plessey barcode format. Disabled by default, must explicitly be allowed.
  • ๐Ÿš€ Improvements:
    • Improved barcode detection model
    • Improved handling of ink spread issues with Code128 barcodes
    • Improved barcode and QR code live detection especially for very dense codes
  • ๐Ÿž Bug fixes:
    • ID Card Scanning: fixed bug that prevented recognition of the letter 'รŸ'

Version 1.9.17 (3 Jul 2020):#

  • ๐Ÿž Bug fixes:
    • Adds missing simulator debug symbol files

Version 1.9.16 (2 Jul 2020):#

  • ๐ŸŽ‰ New:
    • Recognizer for German ID Cards SBSDKIDCardRecognizer + the corresponding SBSDKIDCardScannerViewController as Classical Component
    • Added support for XCFramework - Apple's new binary format of packing frameworks
    • Beta: Blurriness estimator SBSDKBlurrinessEstimator
    • Beta: Model-based solution for BackgroundClean filter
  • ๐Ÿš€ Improvements:
    • Updated the installation guide
  • ๐Ÿš™ Under the hood:
    • Updated OpenSSL to version 1.1.1g
    • Updated TensorFlow to version 2.2.0
  • โš ๏ธ Breaking Changes:
    • Spelling fixes:
      • In SBSDKUIEnableCameraUIConfiguration parameter enableCameraDesctiptionColor was renamed to enableCameraDescriptionColor
      • In SBSDKUIWorkflowStep parameter runsContinousValidation was renamed to runsContinuousValidation

Version 1.9.15 (18 May 2020):#

  • ๐ŸŽ‰ New:
    • Added support for inverted barcodes
    • Added class SBSDKUICroppingScreenBehaviorConfiguration and corresponding property of this class to SBSDKUICroppingScreenConfiguration.
    • Added detectorMode parameter to behavior configuration for RTU UI document scanner SBSDKUIDocumentScannerBehaviorConfiguration. This parameter allows to choose the detector type for scanner: standard or machine learning based.
    • Added possibility to set default detector mode of SBSDKDocumentDetector via + (void)setDefaultDetectorMode:(SBSDKDocumentDetectorMode)newDefaultDetectorMode;. The getter function is + (SBSDKDocumentDetectorMode)defaultDetectorMode;.
    • Added functions - (nullable SBSDKDocumentDetectorResult *)detectDocument:(BOOL)applyPolygonIfOkay detectorMode:(SBSDKDocumentDetectorMode)detectorMode; and - (void)applyDocumentDetectionWithDetectorMode:(SBSDKDocumentDetectorMode)detectorMode; to SBSDKUIPage.
  • โš ๏ธ Breaking Changes:
    • SBSDKUICroppingScreenConfiguration initializer is now - (nonnull instancetype)initWithUIConfiguration:(nonnull SBSDKUICroppingScreenUIConfiguration *)uiConfiguration textConfiguration:(nonnull SBSDKUICroppingScreenTextConfiguration *)textConfiguration behaviorConfiguration:(nonnull SBSDKUICroppingScreenBehaviorConfiguration *)behaviorConfiguration
    • Removed function + (BOOL)isDocumentDetectorModeAvailable:(SBSDKDocumentDetectorMode)mode; from SBSDKDocumentDetector. IOS version check can now be used instead of this function.
    • Removed function + (BOOL)isDocumentDetectorModeAvailable:(SBSDKDocumentDetectorMode)mode; from SBSDKScannerViewController. IOS version check can now be used instead of this function.
    • SBSDKMedicalPlanPatientFieldTypeAllergysAndIntolerances is renamed to SBSDKMedicalPlanPatientFieldTypeAllergiesAndIntolerances
    • SBSDKMedicalPlanSubheadingReceipeFieldType enum is renamed to SBSDKMedicalPlanSubheadingPrescriptionFieldType . Its cases SBSDKMedicalPlanSubheadingReceipeFieldTypeGeneralInformation and SBSDKMedicalPlanSubheadingReceipeFieldTypeReceipeFreeText has been renamed to SBSDKMedicalPlanSubheadingPrescriptionFieldTypeGeneralInformation and SBSDKMedicalPlanSubheadingPrescriptionFieldTypePrescriptionFreeText respectively.
    • SBSDKMedicalPlanSubheadingReceipeField class name is changed to SBSDKMedicalPlanSubheadingPrescriptionField .
    • SBSDKMedicalPlanSubheadingReceipe class name is changed to SBSDKMedicalPlanSubheadingPrescription .
    • Cases of SBSDKVCardDocumentFieldType - SBSDKVCardDocumentFieldTypeCallendarURIForRequests and SBSDKVCardDocumentFieldTypeCallendarURI has been renamed to SBSDKVCardDocumentFieldTypeCalendarURIForRequests and SBSDKVCardDocumentFieldTypeCalendarURI respectively.
    • Case of SBSDKBoardingPassDocumentFieldType - SBSDKBoardingPassDocumentFieldTypeSecongNonConsecutiveBaggageTagLicensePlateNumber has been renamed to SBSDKBoardingPassDocumentFieldTypeSecondNonConsecutiveBaggageTagLicensePlateNumber
    • In SBSDKBarcodeScannerViewControllerDelegate the function - (void)barcodeScannerController:(nonnull SBSDKBarcodeScannerViewController *)controller didDetecBarcodes:(nonnull NSArray<SBSDKBarcodeScannerResult *> *)codes; is renamed to - (void)barcodeScannerController:(nonnull SBSDKBarcodeScannerViewController *)controller didDetectBarcodes:(nonnull NSArray<SBSDKBarcodeScannerResult *> *)codes;.

Version 1.9.14 (7 May 2020):#

  • ๐Ÿž Bug fixes:
    • Fixes a problem with Apples review process rejecting an app because of pdf.ttf font

Version 1.9.13 (28 Apr 2020):#

  • ๐Ÿž Bug fixes:
    • Fixes a crash in Workflows

Version 1.9.12 (27 Apr 2020):#

  • ๐ŸŽ‰ New:
    • New ML-based document detector
    • European Health Insurance Card (EHIC): Automatic country detection and support for Austrian EKVK cards
    • Updated Tesseract OCR engine to version 4.1.0
  • โš ๏ธ Breaking Changes:
    • Renamed SBSDKPageAspectRatio to SBSDKAspectRatio
    • In SBSDKFinderLayer type of parameter minimumInsets was changed from CGSize to UIEdgeInsets. So now inset from each side can be set up independently.
    • In SBSDKUIMachineCodeScannerUIConfiguration removed bottomButtonsInactiveColor and bottomButtonsActiveColor. Parameter topBarButtonsColor now affects flash button active state. Added flashButtonInactiveColor.
    • In SBSDKScannerViewController type of parameter capturingFrameMinimumInset was changed from CGSize to UIEdgeInsets.
    • In SBSDKScannerViewController parameter CGSize capturingFrameSize is changed to SBSDKAspectRatio *capturingFrameAspectRatio.
    • In SBSDKBarcodeScannerViewController parameter CGSize capturingFrameSize is changed to SBSDKAspectRatio *capturingFrameAspectRatio.
    • In SBSDKBarcodeScannerViewController type of the parameter capturingFrameMinimumInset was changed from CGSize to UIEdgeInsets.
    • In SBSDKUIMachineCodeScannerUIConfiguration parameters CGFloat finderWidth and CGFloat finderHeight are replaced by SBSDKAspectRatio *finderAspectRatio.
    • In SBSDKUIScanBarCodeWorkflowStep the initializer - (instancetype)initWithTitle:(nullable NSString *)title message:(nullable NSString *)message acceptedCodeTypes:(nullable NSArray<SBSDKBarcodeType *> *)acceptedMachineCodeTypes finderViewSize:(CGSize)finderViewSize resultValidation:(nullable SBSDKUIWorkflowStepValidationHandler)resultValidationHandler is changed to - (instancetype)initWithTitle:(nullable NSString *)title message:(nullable NSString *)message acceptedCodeTypes:(nullable NSArray<SBSDKBarcodeType *>*)acceptedMachineCodeTypes finderViewAspectRatio:(nullable SBSDKAspectRatio *)finderViewAspectRatio resultValidation:(nullable SBSDKUIWorkflowStepValidationHandler)resultValidationHandler
  • ๐Ÿž Bug fixes:
    • Finder in SBSDKUIMRZScannerViewController now has the same behavior, as in SBSDKUIBarcodeScannerViewController. By documentation, both should operate with aspect ratio, but MRZ screen operated with actual sizes.
  • ๐Ÿš€ Improvements:
    • In SBSDKUIBarcodeScannerViewController and SBSDKUIMRZScannerViewController flash button was moved to navigation bar to save more space for finder layer.

Version 1.9.11 (26 Mar 2020):#

  • ๐ŸŽ‰ New:
    • New SBSDKUIMultipleObjectScannerViewController RTU UI component for scanning multiple objects like business cards
    • Barcode scanning: Added SBSDKUIBarcodeImageStorage class for handling barcode images storage
    • Barcode scanning: Added flashLightEnabled property to SBSDKBarcodeScannerViewController
    • General: Added - (void)cameraAccessDidChange:(BOOL)granted; function to SBSDKUICameraViewController. This function can be used by SBSDKUICameraViewController subclasses to define behavior after camera access check
  • โš ๏ธ Breaking Changes:
    • removed SBSDKMachineReadableCode, SBSDKMachineReadableCodeMetadata, SBSDKMachineReadableCodeManager, SBSDKGenericBarcode, SBSDKGenericQRCode, SBSDKContactQRCode, SBSDKEventQRCode, SBSDKLocationQRCode, SBSDKMailMessageQRCode, SBSDKPhoneNumberQRCode, SBSDKShortMessageQRCode, SBSDKWebURLQRCode, SBSDKWiFiHotspotQRCode since these classes have become obsolete

Version 1.9.10 (21 Feb 2020):#

  • ๐Ÿž Bug fixes:
    • Various minor bug fixes and improvements

Version 1.9.9 (4 Feb 2020):#

  • ๐ŸŽ‰ New:
    • Adjustable Filters: Added new GPU-accelerated filters for base manipulation of images, e.g. contrast, brightness, saturation, vibrance, color temperature, tint etc. using Metal.framework with fallback options to OpenGL ES and CPU (see SBSDKAdjustableFilters headers includes for subclasses)
    • Barcode Scanning: New ML-based Barcode and QR-code scanner
    • Cheque recognition: New ML-based recognizer with support for american and EU cheque formats
  • ๐Ÿš€ Improvements:
    • Licensing: Changed license failure handling: invalid licenses will no longer crash the app containing ScanbotSDK, instead SDK API will return nil or empty values
    • Licensing: Query the currents license status using +[ScanbotSDK licenseStatus]
    • Barcode Scanning: Improved static images detection
    • MRZ Scanning: Added support for swiss driver license
    • Added aspect ratio range property to SBSDKMultipleObjectsDetector
  • ๐Ÿž Bug fixes:
    • Fixes and improvements for various image filters
    • Various fixes for barcode parsers of different formats
    • Fixed Machine Readable Zones recognition (black background)
    • Fixed a typo in SBSDKMachineReadableZoneRecognizerResult: recognitionSuccessful
    • DC recognizer: bug fixes and performance improvements
  • โš ๏ธ Breaking Changes:
    • Fixed a typo in SBSDKMachineReadableZoneRecognizerResult: recognitionSuccessful
    • SBSDKBarcodeScanner: function parameters with types of barcodes to detect have been moved to a property
    • SBSDKBarcodeScanner: some function parameters have been renamed
    • SBSDKUIBarcodeScannerViewControllerDelegate: [SBSDKUIBarcodeScannerViewControllerDelegate qrBarcodeDetectionViewController:didDetect:] has been replaced by [SBSDKUIBarcodeScannerViewControllerDelegate qrBarcodeDetectionViewController:didDetectResults:]
  • โŒ Deprecated API:
    • SBSDKChequeRecognizerResult: the properties routingNumber, accountNumber and chequeNumber have been encapsulated in a new class named SBSDKChequeRecognizerResultField that now holds the string value as well as a detection confidence value

Version 1.9.8 (15 Jan 2020):#

  • ๐Ÿž Bug fixes:
    • Fixed crash caused by adding SBSDKScannerViewController as embedded controller via Interface Builder

Version 1.9.7 (25 Oct 2019):#

  • ๐Ÿš€ Improvements:
    • MRZ Scanner: Added all checkdigits in MRZ result as additional fields - see SBSDKMachineReadableZoneRecognizerResult.checkDigits.
  • ๐Ÿž Bug fixes:
    • Fixed crashes in the beta Barcode Scanner with parsing AAMVA data of PDF417 barcodes on US driver licenses.
    • iOS 13 fix: Set the default modalPresentationStyle of SBSDKScannerViewController and all RTU UI ViewControllers to UIModalPresentationFullScreen.
  • โš ๏ธ Breaking Changes:
    • Barcode types passed to ScnabotSDK API are no longer parameters of type NSArray<NSNumber *>* but of NSArray<SBSDKBarcodeType *>*. Affected APIs are located in SBSDKBarcodeScanner, SBSDKBarcodeScannerResult, SBSDKScannerViewController , SBSDKUIBarcodeScannerViewController, SBSDKUIMachineCodesCollection and SBSDKUIWorkflowStep and its subclasses.

Version 1.9.6 (24 Sep 2019):#

  • ๐Ÿž Bug fixes:
    • Fixed a sporadic crash in the beta Barcode Scanner SBSDKBarcodeScanner.
    • Fixed a crash in the beta Barcode Scanner with parsing AAMVA data of PDF417 barcodes (support for shorter header than in specification).

Version 1.9.5 (21 Aug 2019):#

  • ๐Ÿž Bug fixes:
    • Fixed UI configs of the RTU UI EHIC Scanner (SBSDKUIHealthInsuranceCardScannerUIConfiguration.topBarBackgroundColor).
    • Fixed mappings of new field types SBSDKDisabilityCertificateRecognizerCheckboxTypeAccident and SBSDKDisabilityCertificateRecognizerCheckboxTypeRequiresCare in SBSDKDisabilityCertificatesRecognizerResult.

Version 1.9.4 (12 Aug 2019):#

  • ๐ŸŽ‰ New:
    • New recognizer for the European Health Insurance Cards (EHIC). Provides live detection and data extraction of all fields on the back of the card. Available as Classical SDK Component class SBSDKHealthInsuranceCardRecognizer as well as the Ready-To-Use UI Component class SBSDKUIHealthInsuranceCardScannerViewController. Also see our updated example apps on GitHub scanbot-sdk-example-ios for easy integration.
    • New QR- & Barcode Scanner SBSDKBarcodeScanner as beta feature which provides:
      • better detection and exatraction of 1D and 2D barcodes, especially Data Matrix and PDF 417 codes
      • improved and simplified API - see the class SBSDKBarcodeScanner of our Classical SDK Components (implementation as RTU UI Component will follow soon)
      • out-of-the-box parsers, like German Medical Plans (Medikationsplan) based on Data Matrix (SBSDKMedicalPlanDocumentFormat), ID Cards (SBSDKIDCardPDF417DocumentFormat) or US Driver Licenses (SBSDKAAMVADocumentFormat) both based on PDF 417.
    • Please note that the new SBSDKBarcodeScanner component is a BETA feature and is still under active development and improvement.
  • ๐Ÿž Bug fixes:
    • Fixed the delegate call imageEditingViewControllerDidChangePolygon: of SBSDKImageEditingViewController.

Version 1.9.3 (30 Jul 2019):#

  • ๐ŸŽ‰ New:
    • New black & white image filter SBSDKImageFilterType.SBSDKImageFilterTypeLowLightBinarization2.
    • Disability Certificate Recognizer - Recognition of new fields: SBSDKDisabilityCertificatesRecognizerResult.patientFields, SBSDKDisabilityCertificatesRecognizerResult.intention, SBSDKDisabilityCertificatesRecognizerResult.insuredPersonType.
  • ๐Ÿš€ Improvements:
    • Validation of the key names in -[SBSDKKeyedImageStorage setImage:forKey:]. Please note that passing an invalid key will throw an NSInvalidArgumentException now. See the API docs of the setImage method for more details.
    • Improved recognition of SEPA payforms via SBSDKPayFormScanner. Added recognition from barcodes and some new fields. Please also note the API breaking changes below.
  • โš ๏ธ Breaking Changes:
    • SBSDKPayFormScanner API - Removed the obsolete methods detectOnImage:scannedImage and recognizeFieldsOnImage:scannedImage. Replaced by a new all-in-one method -[SBSDKPayFormScanner recognizeFromImage:]. Removed obsolete classes SBSDKPayFormResult, SBSDKPayFormDetectionResult and SBSDKPayFormDetectedBox.
  • ๐Ÿž Bug fixes:
    • Fixed an issue with unknown device orientation UIDeviceOrientationUnknown in SBSDKScannerViewController.
    • Removed hardcoded language string in +[SBSDKOpticalTextRecognizer recognizeText:indexSet:languageString:pdfOutputURL:error:].

Version 1.9.2 (6 Jun 2019):#

  • ๐ŸŽ‰ New:
    • Added a new config property in the RTU UI Document Scanner Component: SBSDKUIDocumentScannerBehaviorConfiguration.maxNumberOfPages

Version 1.9.1 (23 May 2019):#

  • ๐Ÿš€ Improvements:
    • Added initializer -[SBSDKUIPage initWithPageFileID:polygon:filter:documentImageSizeLimit:]
  • ๐Ÿž Bug fixes:
    • Fixed OCR resource path

Version 1.9.0 (3 May 2019):#

  • ๐ŸŽ‰ New:
    • Workflows - New RTU UI Scanning Components. See the Workflows section for more details.
    • New black & white image filter SBSDKImageFilterType.SBSDKImageFilterTypeLowLightBinarization - Binarization filter primarily intended to use on low-contrast documents with hard shadows.
    • Added new config properties in the RTU UI Document Scanner Component:
      • SBSDKUIDocumentScannerBehaviorConfiguration.documentImageSizeLimit - to limit the size of the document image.
      • SBSDKUIDocumentScannerBehaviorConfiguration.stopsCameraSessionWhenDisappeared - to avoid lags in some situations when the receiver returns to the scanning screen.
      • SBSDKUIDocumentScannerUIConfiguration.shutterButtonHidden - to hide the shutter button.
  • ๐Ÿš€ Improvements:
    • OCR - Upgraded the OCR engine to Tesseract v4.00. Improved recognition speed and quality. Please also note the Breaking Changes below.
    • Improved performance of the images filter SBSDKImageFilterType.SBSDKImageFilterTypeDeepBinarization.
    • Better visualization and API for energy save management in the Classical UI Scanner Component SBSDKScannerViewController. See the new property SBSDKScannerViewController.energySavingActive. Please make sure to implement a suitable handling and localized text for that (e.g. in the delegate method -[SBSDKScannerViewControllerDelegate scannerController:localizedTextForDetectionStatus:]).
    • Better visualization for energy save management in the RTU UI Document Scanner Component SBSDKUIDocumentScannerViewController. Added a new text hint configuration SBSDKUIDocumentScannerTextConfiguration.textHintEnergySavingActive. Please make sure to provide a suitable localized text for that.
    • Added a dummy image for simulator image capturing. It can be used to run automated tests of all Document Scanner components on a simulator.
    • Added a new method in -[SBSDKDisabilityCertificatesRecognizer detectAndRecognizeFromImage:] as an alternative detection approach to the recognizeFromImage method.
  • โš ๏ธ Breaking Changes:
    • OCR Language Files - If you use the OCR feature of the Scanbot SDK or some recognizer components which are based on OCR, please upgrade the OCR language files to Tesseract 4.00. See the OCR section for more details.
    • OCR API - OCR results per page. See SBSDKOCRResult.pages.
  • ๐Ÿž Bug fixes:
    • Fixed the status of the torch light toggle button in the RTU UI Document Scanner on reactivating the scanning screen.
    • Various minor bug fixes and improvements.

Version 1.8.6 (20 Feb 2019):#

  • ๐Ÿš€ Improvements:
    • Changed the behaviour of image resource loading.
  • ๐Ÿš™ Under the hood:
    • Updated OpenSSL to v1.0.2q
    • Updated libtiff to v4.0.10
    • Updated libpng to v1.6.36 (part of other libs)
    • Updated libjpeg to v9b (part of other libs)

Version 1.8.5 (14 Feb 2019):#

  • ๐ŸŽ‰ New:
    • Added business card detector and processor: SBSDKMultipleObjectsDetector and SBSDKBusinessCardsImageProcessor
    • Added text orientation recognizer: SBSDKTextOrientationRecognizer
  • ๐Ÿž Bug fixes:
    • Fixed potential synchronization issues with SBSDKIndexedImageStorage and SBSDKKeyedImageStorage

Version 1.8.4 (31 Jan 2019):#

  • Fixed crashes in SBSDKTIFFImageWriter when using write methods with file URLs

Version 1.8.3 (30 Jan 2019):#

  • Fixed handling of SBSDKUICroppingScreenConfiguration.uiConfiguration arguments in RTU Cropping UI (polygonColor, etc)
  • Fixed animation of the Shutter Button in SmartMode in SBSDKScannerViewController
  • Fixed handling of 24bit PNG images (e.g iOS 12 screenshots)
  • Implemented a deep copy functionality in SBSDKIndexedImageStorage as specified by the protocol -[SBSDKImageStoring copy]
  • Implemented new methods -[SBSDKIndexedImageStorage replaceImageAtIndex:withImage:] and -[SBSDKIndexedImageStorage replaceImageAtIndex:withImageAtURL:]
  • Implemented new image filter types SBSDKImageFilterType.SBSDKImageFilterTypeOtsuBinarization, SBSDKImageFilterType.SBSDKImageFilterTypeDeepBinarization and SBSDKImageFilterType.SBSDKImageFilterTypeEdgeHighlight
  • Added storage location initializers to SBSDKUIPageFileStorage
  • Added support for meta-data and compression parameters in SBSDKTIFFImageWriter
  • Added frame limiter for QR/barcode scanning: SBSDKScannerViewController.metadataFrameLimiter
  • Improved recognition of pay cheque: SBSDKChequeRecognizer
  • Improved document detection by required aspect ratios
    • โš ๏ธ Breaking change in the API: Changed the type of the property SBSDKScannerViewController.requiredAspectRatios
  • Various minor bug fixes and improvements

Version 1.8.2 (20 Nov 2018):#

  • Fixed an issue with asset images of RTU UI components
  • Small fixes in MRZ Recognizer (improved detection on still images of some ID cards)

Version 1.8.1 (13 Nov 2018):#

  • Added property SBSDKScannerViewController.requiredAspectRatios to restrict document detection to given aspect ratios
  • Added a new viewfinder layer to SBSDKScannerViewController and the related property SBSDKScannerViewController.finderMode to visualize detection of document with required aspect ratios
  • Added new functions to ScanbotSDK class to better handle license failures, like expiration and usage of features not included in your license:
    • +[ScanbotSDK setupDefaultLicenseFailureHandler]
    • +[ScanbotSDK setLicenseFailureHandler:]
  • Added property SBSDKScannerViewController.frameLimiter which limits the detection rate on very fast devices to save a lot of CPU power and prevents unnecessary battery draining
  • Added a new method +[SBSDKUIPDFRenderer renderDocument:withOCRLanguages:output:] which provides a convenient API to perform OCR and render a searchable PDF of a SBSDKUIDocument
  • Minor accuracy improvements in the document detector

Version 1.8.0 (27 Sep 2018):#

  • Implemented the "Reset/Detect" functionality in RTU Cropping UI
  • Added support for allowedInterfaceOrientations in all RTU UI ViewControllers (can be set via corresponding configurations)
  • Fixed issues with orientationLockMode in RTU Document Scanner UI
  • Added ability to specify preferred aspect ratios for detector in SBSDKScannerViewController (see SBSDKScannerViewController.preferredAspectRatios)
  • Under the hood: Upgraded to OpenCV version 3.4.3
  • Minor bug fixes and improvements

Version 1.7.8 (7 Sep 2018):#

  • Added a new method +[ScanbotSDK setResourceBundle:] to overwrite the location of Scanbot SDK default data bundle (e.g. if you need to embed the data bundles in another bundle)
  • Added a new property SBSDKScannerViewController.defaultShutterButton
  • Bugfix in MRZ Recognizer (dateOfBirth field was not extracted on some French ID cards)
  • Fixed issues with Xcode inspector showing nil for every field in SBSDKMachineReadableZoneRecognizerResult
  • Fixed an issue with bundle data location for Cheque Recognizer
  • Improvements and potential fixes in SDK license manager

Version 1.7.7 (28 Aug 2018):#

  • Fixed bitcode generation

Version 1.7.6 (28 Aug 2018):#

  • DC Scanner:
    • Improved recognition of low-constrast scans
    • โš ๏ธ Breaking change: The DC Scanner now uses eng.traineddata instead of deu.traineddata!
  • Removed the obsolete Credit Card Recognizer from SDK (components and bundles)
  • Minor internal refactorings and improvements

Version 1.7.4:#

  • fixes memory leaks

Version 1.7.3:#

  • fix a bug where SBSDKIndexedImageStorage removes image files not properly

Version 1.7.2:#

  • extended and improved API to apply image filter on pages coming from Ready-To-Use UI
  • new thread-safe container class SBSDKUIDocument for scanned pages
  • added the fields checkDigitsCount and validCheckDigitsCount in SBSDKMachineReadableZoneRecognizerResult
  • minor bug fixes and improvements

Version 1.7.1:#

  • fixed rotation bug in SBSDKImageEditingViewController

Version 1.7.0:#

  • added Ready-To-Use UI components SBSDKUIDocumentScannerViewController, SBSDKUICroppingViewController, SBSDKUIMRZScannerViewController, SBSDKUIBarcodeScannerViewController - a set of easy to integrate and customize high-level UI components for the most common tasks in Scanbot SDK
  • added SBSDKCameraExposureSettings class to extract the current exposure metering parameters from the camera
  • deprecated SBSDKImageStorage
  • added SBSDKIndexedImageStorage and SBSDKKeyedImageStorage as replacements
  • minor bug fixes
  • dropped support for iOS 8

Version 1.6.2:#

  • minor bugfixes
  • added two new SBSDKPDFRendererPageSize modes

Version 1.6.1:#

  • added support for CocoaPods
  • new documentation
  • new filters and cleaned up filter enum
  • moved OCR lanugage data into a separate bundle
  • added image orientation lock property to SBSDKScannerViewController

Version 1.6.0:#

  • minor bugfixes and improvements
  • built with Xcode 9.3 toolchain

Version 1.5.9:#

  • fixed a line rendering problem in SBSDKImageEditingViewController

Version 1.5.8:#

  • added SBSDKTIFFImageWriter

Version 1.5.7:#

  • updated OCR engine
  • added SBSDKMachineReadableZoneRecognizer

Version 1.5.6:#

  • added capture simulation to SBSDKScannerViewController

Version 1.5.5:#

  • added Disability Certificate Recognizer

Version 1.5.4:#

  • fixed a bug with duplicated URLs in SBSDKImageStorage

Version 1.5.3:#

  • fixed a crash when importing images from the photo library

Version 1.5.2:#

  • fixed a bug with 16 bit per component images and Display P3 colorspace

Version 1.5.1:#

  • added two new functions to SBSDKScannerViewController to help with energy saving

Version 1.5.0:#

  • fixed a bug with unrecognized barcodes
  • added a new SBSDKScannerViewControllerDelegate function that delivers the captured original image and image metadata

Version 1.4.8:#

  • added support for machine readable codes (QR codes, barcodes) scanning in SBSDKScannerViewController
  • added support and protocol for parsing machine readable codes
  • added basic QR and barcode parsers
  • added support for registering custom machine readable code parsers
  • moved demo app from SDK into a separate github repository, now it is located here: https://github.com/doo/scanbot-sdk-example-ios

Version 1.4.7:#

  • new SBSDKImageEditingViewController as a flexible and more powerful replacement of SBSDKCropViewController
  • SBSDKCropViewController has been deprecated and will not longer receive software engineering love

Version 1.4.6:#

  • Fixed a bug where capturing an image would block the main thread unnecessarily long

Version 1.4.5:#

  • Improved performance when capturing images using SBSDKScannerViewController by around 50%

Version 1.4.4:#

  • New functions in SBSDKScannerViewControllerDelegate for scanning documents, customizing UI and QR code scanning
  • Fixed a bug in SBSDKCropViewController where sometimes the polygon handles were not touchable

Version 1.4.3:#

  • Fixed a bug in SBSDKCropViewController where sometimes the polygon handles were not visible

Version 1.4.2:#

  • Minor bugfixes
  • New autocaptureSensitivity property in SBSDKScannerViewController

Version 1.4.1:#

  • Minor bugfixes in documentation
  • Additional synchronous API for SBSDKOpticalTextRecognizer and SBSDKPDFRenderer

Version 1.4.0:#

  • Added SBSDKCropViewController, a Scanbot-like UI for manual cropping of images, including magnetic snapping of edges to found contours

Version 1.3.0:#

  • Removed static libraries
  • Changed distribution model to single embeddable framework containing all architectures and bitcode

Version 1.2.1:#

  • Fixed crash in sample app by adding NSCameraUsageDescription and NSPhotoLibraryUsageDescription.

Version 1.2.0:#

  • Improved all detectors accuracy
  • Added SBSDKImageMetadata and SBSDKImageMetadataProcessor to extract EXIF data etc. from image
  • Added SBSDKLensCameraProperties which can be passed to polygon based warping functions to improve the aspect ratio of the cropped image and let it be very close to the original documents aspect ratio
  • SBSDKLensCameraProperties can be extracted from SBSDKImageMetadata
  • Added 3 new filters: SBSDKImageFilterTypePhoto, SBSDKImageFilterTypePhotoBW1, SBSDKImageFilterTypePhotoBW2
  • The photo filter is useful to correct strong color tints, the 2 other new filters create different color-to-gray mappings
  • Added SBSDKMultipleDocumentsDetector (Beta) to detect multiple photos or documents on an image
  • Minor fixes and optimizations

Version 1.1.4:#

  • Added cheque recognizer SBSDKChequeRecognizer

Version 1.1.2:#

  • Improved credit card recognizer SBSDKCreditCardRecognizer

Version 1.1.1:#

  • Beta: Added brand new credit card recognizer: SBSDKCreditCardRecognizer
  • Refactored Demo app: now contains Document Detection, Payform Detection and Credit Card detection
  • Fixed some bugs in SBSDKScannerViewController, e.g. automatic crop after manual snap
  • Added imageMode flag to SBSDKScannerViewController, can be set to grayscale mode to capture all images in grayscale mode for better memory footprint
  • Added API to SBSDImageProcessor to pass UIImage objects directly instead of NSURLs

Version 1.0.15:#

  • Added new delegate method -(NSString )scannerController:(SBSDKScannerViewController )controller localizedTextForDetectionStatus:(SBSDKDocumentDetectionStatus)status to help you localizing the detection status strings

Version 1.0.14:#

  • New color filter now working correctly
  • Fixed a bug in the binarization filter

Version 1.0.13:#

  • Improved accuracy of automatic document detection
  • Introduced new colored document image filter

Version 1.0.12:#

  • Rebuilt with Xcode 7 final
  • Updated some documentation

Version 1.0.11:#

SBSDKScannerViewController

  • Fixed an orientation issue on iPad

Version 1.0.10:#

SBSDKScannerViewController

  • Significantly improved peak memory usage when capturing images (~ 50%)
  • Added new delegate method - (BOOL)scannerController:shouldRotateInterfaceForDeviceOrientation:transform:(CGAffineTransform)transform

Version 1.0.9:#

SBSDKScannerViewController

  • Added new delegate method (void)scannerControllerDidChangeDeviceOrientation:to:transform:

Version 1.0.8:#

SBSDKScannerViewController

  • Added new method -(BOOL)captureStillImage to allow manual capturing using the delegate interface

Version 1.0.7:#

SBSDKScannerViewController

  • Fixed wrong orientation of original image when capturing a document image

Version 1.0.6:#

SBSDKScannerViewController

  • Fixed a bug that prevented displaying the detection statuses for poor light and noise
  • Added properties acceptedSizeScore and acceptedAngleScore, allowing you to alter the acceptance parameters for automatic shutter release (e.g. more perspective distortion or smaller document size)