Skip to main content

Changelog | Capacitor Document Scanner

Version 4.3.0 (2 May 2024)

  • 🎉 New:
    • Added textDataValueFilter property to TextDataScannerConfiguration that accepts regex strings. Default is undefined (no filter applied).
  • 🐞 Bug fixes:
    • Fixed gs1HandlingMode property for detectBarcodesOnImage and detectBarcodesOnImages.
  • ⚠️ Breaking Changes:
    • Updated to Capacitor version 6

Version 4.2.0 (11 Apr 2024)

  • 🎉 New:
    • Introduced VIN Scanner RTU UI (see startVinScanner).
    • Introduced Document Quality Analyzer. It analyzes the text quality (legibility) on images.
    • Added new Barcode Types: MICRO_QR_CODE, INDUSTRIAL_2_OF_5, USPS_INTELLIGENT_MAIL, ROYAL_MAIL, JAPAN_POST, ROYAL_TNT_POST, AUSTRALIA_POST, DATABAR_LIMITED, GS1_COMPOSITE.
    • Added support for Kuwait ID cards in the MRZ scanner.
    • Added support for the Israeli Check standard.
    • New generation of Text Data Scanner RTU UI. The quality and speed of scanning has significantly improved. Changed the default OCR engine to the new Scanbot_OCR engine. With the new ML-based OCR engine the speed of text recognition has increased twofold. The new OCR engine currently supports all languages with latin letters, there is no need to specify the languages for it.
    • Tesseract language traindata is no longer needed by default. Tesseract engine mode can still be used with customization of OCR config.
    • Added a type literal, BACK_WIDEST for CameraModule (iOS only).
    • Added a type literal, CREW_MEMBER_CERTIFICATE for MRZDocumentType.
    • Added new type literals for PDFPageSize.
    • Added new types:
      • FinderDocumentScannerResult that describes the result of startFinderDocumentScanner
      • BarcodeScannerResult that describes the result of startBarcodeScanner
      • BatchBarcodeScannerResult that describes the result of startBatchBarcodeScanner
      • TextDataRecognitionResult that describes the result of TextDataScannerResult
      • HealthInsuranceCardField that describes the fields of the HealthInsuranceCardScannerResult
      • MedicalCertificateDatesInfo, MedicalCertificateCheckboxesInfo, MedicalCertificatePatientDataInfo and MedicalCertificatePatientDataInfoField to better describe MedicalCertificateRecognizerResult
      • PerformOCRArguments to better describe the arguments for performOcr function
      • CreatePDFArguments to better describe the arguments for createPDFResult function
      • WriteTIFFArguments to better describe the arguments for writeTIFF function
    • Added new properties in the following configurations:
      • DocumentScannerConfiguration: flashButtonHidden, flashButtonTitle, touchToFocusEnabled and preferredAspectRatios
      • FinderDocumentScannerConfiguration: flashButtonHidden and touchToFocusEnabled
      • CroppingConfiguration: topBarTitle and topBarTitleColor
      • BarcodeScannerConfiguration and BatchBarcodeScannerConfiguration: barcodesExtensionFilter, flashButtonHidden, flashButtonTitle, touchToFocusEnabled, viewFinderEnabled, barcodeValueFilter and confirmationDialogConfiguration
      • MrzScannerConfiguration, HealthInsuranceCardScannerConfiguration, TextDataScannerConfiguration, LicensePlateScannerConfiguration, MedicalCertificateRecognizerConfiguration, CheckRecognizerConfiguration and GenericDocumentRecognizerConfiguration: flashButtonHidden, flashButtonTitle and touchToFocusEnabled
    • Added support for inverted PDF-417 barcodes.
    • MRZ support for td1 long document standard.
    • Android: Added a new implementation of extractImagesFromPdf and extractPagesFromPdf.
    • iOS: Added Privacy manifest file (PrivacyInfo.xcprivacy) to the SDK.
  • 🚀 Improvements:
    • Improved accuracy and detection speed of QR_CODE, CODE_39, and CODE_93 barcode types.
    • Improved the speed of barcode recognition for most barcode symbologies.
    • Improved contour lines detection with ML Based detection.
    • acceptedCheckStandards can now be set when calling recognizeCheck.
    • Android: Stripped down the Android dynamic symbol table in native libraries. As a result, the size of the native shared libraries has decreased.
    • Android: Optimized the size of native libraries integrated into the Scanbot SDK.
    • Android: Enhanced error handling behavior when deleting SDK pages.
    • Android: Improved quality and speed of the Document Contour detector.
    • Android: Decreased size of Document Contour detector ML model.
    • iOS: Changed the default zoom range from (0.0 - 3.0) to (0.0 - 12.0) for cameraZoomRange in all RTU-UI configurations.
    • Android: Proguard rules needed for Scanbot SDK are embedded in the plugin. There is no need to manually specify them in your project.
  • 🐞 Bug fixes:
    • Before, for certain invalid decoding of QR, an exception was thrown from ZXing. Now we rigorously treat this as a format error.
    • Before, we have returned CODE_25 results when INDUSTRIAL_2_OF_5 was enabled and CODE_25 was disabled. Now, we do not return the CODE_25 result for such decoding options.
    • Fixed the detection of a few false positive RSS Expanded codes in live mode.
    • Android: Fixed potential memory leak in all RTU-UI screens.
    • Android: Fixed some OOM crashes on low to midrange devices.
    • Android: Fixed false positives for CODE_39 and CODABAR barcodes.
    • Android: Fixed colors not being applied to fields in GenericDocumentRecognizerConfiguration.
    • Android: Fixed crash in TextDataScanner on ARM v7 devices.
    • Android: Fixed bug with invisible back button on Document Scanner RTU UI screens when no Camera permission was granted.
    • Android: Fixed the logic in autoSnapProgressEnabled and polygonAutoSnapProgressEnabled methods in FinderDocumentScannerConfiguration and DocumentScannerConfiguration respectively.
    • Android: Fixed textDataScannerStep not applying in TextDataScannerConfiguration.
    • Android: Fixed behavior of ocrResolutionLimit in TextDataScannerConfiguration.
    • Android: Corrected mapping of userGuidanceStrings in CheckRecognizerConfiguration.
    • Android: Fixed enableCameraButtonTitle and enableCameraExplanationText parameters on BarcodeScannerConfiguration and BatchBarcodeScannerConfiguration.
    • iOS: Fixed issues with performOCR functionality.
    • iOS: Fixed storage path issue for some of the operations when setting custom storage.
    • iOS: Fixed a crash when denying camera permission.
    • iOS: Fixed a bug with magnetic lines in CroppingScreen RTU UI.
    • iOS: Fixed a bug where the polygon should be mirrored when using the front camera in DocumentScannerResult.
    • iOS: Fixed a bug where automaticSelectionEnabled was not working properly in BarcodeScannerConfiguration.
    • iOS: Fixed a bug where flashEnabled was not working properly in HealthInsuranceCardScannerConfiguration.
    • iOS: Fixed a bug where ocrResolutionLimit was not being used in TextDataScannerConfiguration.
    • iOS: Fixed a bug with the iPad 5th generation where captured images were wrong.
    • iOS: Fixed a bug where the finder text hint was still showing when viewFinderEnabled was disabled in BarcodeScannerConfiguration and BatchBarcodeScannerConfiguration.
    • iOS: Fixed a wrong polygon color in RTU-UI barcode scanner tracking overlay.
  • ⚠️ Breaking Changes:
    • iOS: Removed support for iOS 11.x and 12.x. The minimum deployment target to use ScanbotSDK in your app is iOS 13.0!
    • status property is included in ResultWrapper interface and extracted from all resulting interfaces.
    • All file outputs are now represented as encoded URI strings.
    • Removed deprecated functions getStoredPageIds, getPageImageUris and getPageById.
    • ImageFilterType type literals are changed. Replace the type literals in order to use applyImageFilter, applyImageFilterOnPage, getFilteredDocumentPreviewUri and all Page functionalities.
    • MRZ Scanner and recognizeMRZ result breaking changes: field property in the result is removed and replaced with mrz of type MRZDocument. All types associated with fields property have been removed.
    • Check Recognizer and recognizeCheck result breaking changes: field property in the result is removed and replaced with check of type CheckDocument. All types associated with fields property have been removed.
    • GenericDocumentRecognizer result breaking changes: result is restructured to return an array containing the types MRZDocument, DeIdCardFrontDocument, DeIdCardBackDocument, DePassportDocument, DeDriverLicenseFrontDocument and DeDriverLicenseBackDocument. Previous types and properties have been removed.
    • The estimateBlur functionality has been removed and replaced by the far superior documentQualityAnalyzer.
    • recognizeCheck argument is redefined to be an object that contains imageFileUri and acceptedCheckStandards.
    • imageUri has been renamed to imageFileUri in setDocumentImage function argument object.
    • The property enableGS1Decoding has been replaced by gs1HandlingMode in BarcodeScannerConfiguration and BatchBarcodeScannerConfiguration. GS1 codes are now handled differently for various barcode types. Using the default option PARSE will give the same result as before for all barcode types, except of RSS_EXPANDED. Previously, for RSS_EXPANDED, the result was inconsistently returned with parentheses. Now, to get results with parentheses for all barcode types, it is needed to choose the option DECODE.
    • Property supportedLanguages has been removed from HealthInsuranceCardScannerConfiguration.
    • Property barcodeImageGenerationType has been removed from BarcodeScannerConfiguration.
    • Properties rawText and isValidationSuccessful removed from LicensePlateScannerResult.
    • Property textFilterStrategy has been removed from TextDataScannerStep.
    • Property subfiles in AAMVADocumentFormat now returns an array of AAMVADocumentSubfile.
    • Removed type literal TRAVEL_DOCUMENT from MRZDocumentType.
    • Type literals for types CapturePhotoQualityPrioritization, LicensePlateScanStrategy, MSIPlesseyChecksumAlgorithm, GenericDocumentType and FieldDisplayState have been modified.
    • Type FinderAspectRatio is renamed to AspectRatio.
    • Type InitializationOptions is renamed to ScanbotSdkConfiguration.
    • Type CameraImageFormat is renamed to StorageImageFormat.
  • 🚙 Under the hood:
    • Upgraded the native Scanbot Android SDK and Scanbot iOS SDK to v4.2.0
    • Added "libharu" library to dependencies.
    • Android: Blackview and Caterpillar brands are now excluded from GpuAcceleration-supported devices.
    • Android: Removed "Android PDF Writer" library from dependencies.
    • Android: Upgraded OpenCV version to 4.8
    • Android: Added "icu4c" library to dependencies.
    • Android: Updated version of Nameof C++ library to v0.10.3
    • Android: Disabled GPU acceleration for Redmi 9 models, Samsung Galaxy Grand Prime and devices with Android older than 6.

Version 2.2.4 (2 Jan 2024)

  • 🎉 New:
    • Added new functions: extractImagesFromPdf and extractPagesFromPdf.
  • 🐞 Bug fixes:
    • Fixed getOCRConfigs function.
    • Android: Fixed wrong default value for storageImageQuality input parameter when calling initializeSDK.

Version 2.2.3 (31 Oct 2023)

  • 🐞 Bug fixes:
    • Fixed scanners not resolving promises on user manual cancel.
    • Fixed SDK function: performOCR.
    • Fixed options being ignored when calling SDK function: writeTiff.
    • Fixed parsing of custom storage path for file URIs on iOS .
  • 🚀 Improvements:
    • Android: Reduced APK size by removing io.scanbot:sdk-ml-imageprocessor-assets dependency.
  • ⚠️ Breaking changes:
    • IMPORTANT: From now on, Android Camera Permission will not be added automatically when installing the Scanbot SDK Capacitor Plugin. Please include <uses-permission android:name="android.permission.CAMERA"/> in your app AndroidManifest.xml if you are using any of our camera functionalities.
    • Removed ImageFilterTypeSensitiveBinarization Image Filter Type.
    • Deprecated InitializationOptions. Please use ScanbotSdkConfiguration instead.
  • 🚙 Under the hood:
    • Prevented potential crashes by improving null safety.

Version 2.2.2 (5 Oct 2023)

  • 🐞 Bug fixes:
    • Fixed a focusing issue with the new iPhone 15 Pro and 15 Pro Max.
    • Fixed the cleanup SDK function.
    • Fixed the estimateBlur SDK function on iOS.
    • Fixed an issue during which applyImageFilterOnPage would fail for some specific image file URIs.
  • 🚀 Improvements:
    • The SDK function getLicenseInfo can now also be called even when the SDK initialization has failed.
  • ⚠️ Breaking changes:
    • The SDK functions getStoredPageIds, getPageImageUris, and getPageById have been deprecated.

Version 2.2.1 (28 Sep 2023)

  • 🎉 New:
    • Introduced Finder Document Scanner! It allows you to scan a single document page with the help of a viewfinder, bound to a certain aspect ratio.
    • Added iOS-only parameters topBarTitle and topBarTitleColor in CroppingConfiguration.
  • 🚀 Improvements:
    • Various minor improvements and fixes for page results
    • Android Scanbot SDK Maven Repositories are now added automatically to the consuming app
    • Reduced Android minSdkVersion from 24 to 22
    • Exported BaseSdkResult TypeScript type
  • ⚠️ Breaking changes:
    • Refactored ImageFilter to ImageFilterType. The enum values have changed - please check the new accepted values in the ImageFilterType type definition

Version 2.2.0 (10 Aug 2023)

  • 🎉 First release of the capacitor-plugin-scanbot-sdk Capacitor Scanbot Document Scanner SDK!
  • Provides Ready-To-Use UI Components - a set of easy to integrate and customize high-level Capacitor components for the most common tasks in Scanbot SDK:
    • Document Scanner
    • Cropping UI & Image Filters
    • Barcode & QR code Scanner
    • MRZ Scanner
    • Generic Document Recognizer
    • EHIC Scanner
    • Check Recognizer
    • License Plate Scanner
  • Provides additional SDK features based on image picked from the device photos application:
    • Detect Barcodes on Image
    • Detect Document on Image
    • PDF and TIFF Operations
    • AES128 and AES256 Encryption
  • New unified Scanbot SDK API:
    • Idiomatic asynchronous design
    • Capacitor-based unified API for Android & iOS
  • Example App demonstrating the new functionalities: Capacitor Angular Example App
  • Uses our Native Scanbot Document Scanner SDKs under the hood:

Want to scan longer than one minute?

Generate your free "no-strings-attached" Trial License and properly test the Scanbot SDK.

Get your free Trial License

What do you think of this documentation?