Changelog
tip
For additional details about the API, please refer to our API reference documentation.
MAUI - Version 8.0.0 (18 Mar 2026)β
- π New:
- General:
- Added support for
.NET 10TargetFramework. - The SDK now supports a new license key format, which does not contain special characters or line breaks.
- Introduced
IScanbotPdfImageExtractor, a new API for extracting images from a PDF. - Added a new class
SdkConfigurationto replace the previousScanbotSdkConfigurationtype for SDK initialization. - Added a new image input option
ImageRefto all the scan from image features and also other APIs accepting image as input. E.g, the Barcode API has changed fromDetectBarcodesAsync(PlatformImage image)toScanFromImageAsync(ImageRef image, ...). Similar updates have been applied to other scanners. - Added a configuration option
ProcessingModeto optimize processing for either single or multiple images in barcode scanning. SeeBarcodeScannerScreenConfiguration.ScannerConfiguration. ImageRefnow supports HEIC images.- iOS: The
KeepScreenOnproperty for all RTU-UI screens now also supports iOS. It prevents the system from going idle or entering the lock screen while scanning. - Added property
CameraLiveScannerResolutionto all the RTU-UI v2 screens to control the camera live scanning resolution. SeeCameraConfigurationin all the scanner configurations. E.g.,DocumentScanningFlow#.Screens.Camera.CameraConfiguration.CameraLiveScannerResolution. - Added a new RTU-UI function
ForceCloseScannerAsync()to all the available scanners. This function force closes the existing scanning session.
- Added support for
- Document Scanner:
- Introduced the
IScanbotDocumentAPI that encapsulates and manages all functionalities related to document scanning. - Added a new result class
DocumentScanningResultto provide detailed information about scanning a document from an image. - The
DocumentDetectionResultnow includes aDisplacementVectorand aDocumentDisplacementtype to indicate the direction towards the center of a partially visible document. - Added a new property
PartiallyVisibleDocumentConfigurationtoDocumentScannerConfigurationfor better handling of partially visible documents. - Added a new property
BottomBarModetoCameraConfigurationfor customizing the bottom bar appearance in the RTU-UI scanner. SeeDocumentScanningFlow#.Screens.Camera.BottomBar.BottomBarMode. - Added a new type literal
TextWithBadgeButtonModetoPreviewButtonfor preview mode in the RTU-UI scanner. - Two new
DocumentDetectionStatusvalues have been introduced:ErrorPartiallyVisibleandErrorPartiallyVisibleTooClose. - Classic Component - DocumentScannerView:
- iOS: Added a new property
HardwareButtonEnabledthat controls whether the hardware volume buttons and the new hardware camera control button should snap or not. SeeDocumentScannerView. - Added a new property
DetectDocumentAfterSnapthat allows enabling/disabling document detection after snapping a document. Useful when captured image is required before detection(crop) is performed. - Added a new
OnDocumentScanningErrorcallback to handle errors, providing more detailed error information for better debugging and user feedback.
- iOS: Added a new property
- Introduced the
- Image Processing:
- Introduced the
IScanbotImageProcessorAPI that encapsulates and manages all functionalities related to image processing. - Added new capabilities to resize and crop images.
- The color document filter now has parameters controlling contrast, color, and paper enhancement.
- Added a new property
ColorConversiontoPathImageLoadOptionsandBufferImageLoadOptionsfor applying color conversion during image loading. - Added a new property
CanvasColortoPathImageLoadOptionsandBufferImageLoadOptionsfor setting image conversion when converting images with alpha channel to images without alpha channel. - Now accepts inputs of type
ImageRef.
- Introduced the
- PDF Generator:
- Introduced the
IScanbotPdfGeneratorAPI that encapsulates and manages all functionalities related to creating PDF files.
- Introduced the
- TIFF Generator:
- Introduced the
IScanbotTiffGeneratorAPI that encapsulates and manages all functionalities related to creating TIFF files.
- Introduced the
- OCR Engine:
- Introduced the
IScanbotOcrEngineAPI that encapsulates and manages all functionalities related to optical character recognition. - Introduced a new API
RecognizeOnDocumentAsyncthat performs OCR on a providedIScannedDocumentobject retrieved from a document id. - Added a new class
PerformOcrResultto replace the previousOcrResulttype for OCR results. - Now accepts inputs of type
ImageRefandImageSource.
- Introduced the
- Document Quality Analyzer:
- Added a new property
ProcessByTileConfigurationtoDocumentQualityAnalyzerConfigurationto explicitly enable/disable by tile processing. - Added
CumulativeContrastHistogramandCumulativeTextSizeHistogramproperties for text contrast and size estimation inDocumentQualityAnalyzerResult. - Added the
OrientationConfidenceproperty toDocumentQualityAnalyzerResult. - Now accepts inputs of type
ImageRefandImageSource.
- Added a new property
- MRZ Scanner:
- Introduced the
IScanbotMrzAPI that encapsulates and manages all functionalities related to scanning MRZ.
- Introduced the
- Text Pattern Scanner:
- Introduced the
IScanbotTextPatternAPI that encapsulates and manages all functionalities related to text pattern scanning. - Added a new property
OptimizeSingleLinetoTextPatternScannerConfiguration. Enable this option when scanning a single line or a single word that is hard to scan reliably. Disabled by default.
- Introduced the
- VIN Scanner:
- Introduced the
IScanbotVinAPI that encapsulates and manages all functionalities related to VIN scanning. - Added a new property
OptimizeSingleLinetoVinScannerConfigurationfor improved single line VIN scanning.
- Introduced the
- Document Data Extractor:
- Introduced the
IScanbotDocumentDataExtractorAPI that encapsulates and manages all functionalities related to extracting data from documents. - Added a new
Metadatachild document to all supported formats. - Added a new
CountryCodeproperty to all supported formats. - Added a new type literal
PersonalIdinCommonFieldType.
- Introduced the
- Check Scanner:
- Introduced the
IScanbotCheckAPI that encapsulates and manages all functionalities related to check scanning. - Support a wider range of USA check formats.
- Introduced the
- Credit Card Scanner:
- Introduced the
IScanbotCreditCardAPI that encapsulates and manages all functionalities related to credit card scanning.
- Introduced the
- Barcode Scanner:
- Added a new API
IScanbotBarcode.ParseDocumentAsync(...)for parsing barcode documents from raw text values. - Added a new API
IScanbotBarcode.ScanFromPdfAsync(...)for scanning barcodes from PDF documents. - New supported document parser for British Columbia driver licenses PDF417 codes.
- Introduced a new algorithm for recognizing 1D symbologies (except
EANandUPC), enhancing performance with blurred and distant barcodes. This feature is enabled by default but can be turned off using theEnableOneDBlurScannerproperty in barcode format configurations on low-power devices if necessary. - Added a new barcode scanner engine mode called
NextGenMaxDistance, which is optimized for scanning from far distances on very high-power devices with a 4K video stream. - Barcode configurations for 1D barcode types have a new field
MinimumNumberOfRequiredFramesWithEqualRecognitionResultthat requires this number of frames on which the barcode has to be detected. SeeBarcodeFormatCommonOneDConfiguration. - All 1D barcode formats can be configured with a new
OneDConfirmationModewhich isOneDConfirmationMode.Thoroughby default. Setting it toMinimalorNonecould lead to higher recall in difficult scenarios, but could also cause more false positives. - Introduced the new Result wrapper for all the existing APIs. See
ResultandResult<T>. This improves handling not only successful results, but all errors thrown internally during the process. - Classic Component - BarcodeScannerView and BarcodeScanAndCountView:
- Added a new function
OnBarcodeScanningErrorthat passes the error occurred while scanning, to provide more detailed error information for better debugging and user feedback.. SeeBarcodeScannerView.OnBarcodeScanningError(). - Added 2 new properties
KeepScreenOnandFpsLimit.
- Added a new function
- Added a new API
- General:
- π Improvements:
- General:
- All APIs can now return more complete errors with error messages.
- The new
ResultandResult<T>wrapper classes now return more complete errors (asExceptionobjects) caught from the APIs. - All OCR-based features now benefit from new OCR models that are optimized for speed and accuracy.
- The "Created TensorFlow Lite XNNPACK delegate for CPU." log is no longer an output in production builds.
- When creating an
ImageReffrom a .png file containing an alpha channel, they are blended with a user specified canvas color instead of simply discarding the alpha channel. It is possible to select whether to use aWhiteorBlackbackground inBasicImageLoadOptions,RawImageLoadOptions,PathImageLoadOptions, andBufferImageLoadOptions. - ImageRef: If a global or custom encrypter is set when an image is created from a file, it will be automatically detected if the image is encrypted or not.
Note that now
EncryptionModeis NOT ignored if a custom encrypter/decrypter is used. - iOS: Camera sessions no longer show a black screen in case of license error. Instead, the camera runs but the detection fails with appropriate license error.
- Android: Optimized memory usage of Scanbot Camera components.
- Android: Improved RTU UI components padding behavior for finder view and action bars.
- Document Scanner:
- Added/moved a few Document related CRUD operations to
IScanbotDocumentfromIScannedDocumentandIScanbotOperations:CreateDocumentFromImagesAsync(...)CreateDocumentFromPdfAsync(...)CreateDocumentFromLegacyPagesAsync(...)StoredDocumentUuids(...)DocumentExists(...)StoredDocumentUuids(...)DeleteAllDocumentsAsync(...)DeleteDocumentAsync(...)
- Aspect ratio scores are now symmetrical, and low scores are more consistent.
- Added/moved a few Document related CRUD operations to
- Cropping Screen:
- iOS: Added support for selecting and moving individual corners in the cropping screen using a hardware keyboard. Press the tab key to cycle through the corner and edge handles. Use the arrow keys to move the selected corner or edge handle. Hold shift while pressing the arrow keys to move faster.
- iOS: Improved cropping handle movement, preventing irregular polygons and glitches.
- Image Processing:
- The color document filter now preserves colors better by default.
- Removed unused image filter models, saving about 2+ MB from binaries.
- Added extension to convert
ImageReftoImageSourceand vice-versa.
- PDF Generation:
- PDF generation now supports binarized images. Binarized images are stored in the PDF with an optimized compression algorithm, resulting in extremely small file sizes.
- Also accepts Document Identifier to create a PDF by retrieving the document.
- Accepts a list of
ImageRefandImageSourceinputs.
- TIFF Generation:
- Also accepts Document Identifier to create a TIFF by retrieving the document.
- Accepts a list of
ImageRefandImageSourceinputs.
- Document Quality Analyzer:
- Improved performance.
- If provided configuration is invalid, an error will be returned instead of changing invalid fields to default values.
- OCR Engine:
- Also accepts Document Identifier to perform OCR by retrieving the document.
- Accepts a list of
ImageRefandImageSourceinputs. - Improved detection of text, specifically for lines that are close together.
- Document Data Extractor:
- Improved
FrameAccumulationlogic. - Increased accuracy, specifically fewer false positives.
- General speed improvements.
- Glare detection now works more reliably, especially on iOS.
- Improved
- Credit Card Scanner:
- Higher recall for expiry date detection.
- Improved
FrameAccumulationlogic.
- Barcode Scanner:
- Improved quiet zone checks for the barcode format
PharmaCodeto reduce the false positive rate. - Reduced the false positive rate of blurred barcodes in live mode when the barcode is only partially visible.
- Improved quiet zone checks for the barcode format
- General:
- π Bug fixes:
- General:
- ImageRef: If
ImageRefwas saved to an already existing location, in some cases it could return an error instead of overwriting the existing file. - ImageRef: Fixed possibility of
ImageRefto be saved as an invalid JPEG (when only part of the image was actually saved). - Android: Fixed issues related to edge-to-edge warnings in Google Play Store for RTU-UI screens.
- Android: Fixed dependencies clash related to material icons in RTU-UI screens.
- Android: Fixed an issue with double compression for document images during rotation or filtering operations that significantly increased the size of the original and other
IScannedDocument.IPageimages.
- ImageRef: If
- Document Scanner:
- Now correctly returns
ErrorTooDarkwhen nothing is detected and the image brightness is below the threshold. - iOS: Fixed a bug that left a temporary copy of captured images on disk when scanning with the RTU-UI Document Scanner. These images can be cleaned up using the
ScanbotLegacyPage.RemoveAllPagesAPI. Note that this will remove all legacy pages. If needed, make sure to migrate to the new document objects using theIScanbotDocument.CreateDocumentFromLegacyPagesAPI before removing all legacy pages. - Android: Fixed the title counter update in the review step for the RTU-UI screen.
- Android: Fix a rare issue with a bug that occurred on Xiaomi that breaks the image import feature.
- Android: Fixed an issue where the
Sourceproperty had an incorrect value after migrating from the legacyPageobject to the newPageDataobject.
- Now correctly returns
- Document Quality Analyzer:
- Fixed a bug that could lead to incorrect results. This bug affected documents with text lines that were not strictly vertical or horizontal.
- MRZ Scanner:
- Fixed a rare crash with inverted text.
- Fixed an issue with an incorrect birthdate being parsed from the MRZ date, when the birthdate could be returned from the future.
- VIN Scanner:
- Fixed a bug when scanning VINs that could have discarded valid results.
- Document Data Extractor:
- Fixed a bug which prevented the recognition of mixed letters in the address field of some ID cards.
- Speed up verification of
DeResidencePermitFrontby using interpolation-verification for the "Remarks" field. - Fixed a rare case where an EHIC card could be returned with an excluded country.
- Credit Card Scanner:
- An invalid status will now be correctly returned if the frame accumulator confirms a field that is invalid.
- Barcode Scanner:
- iOS: Fixed a bug in Barcode RTU-UI v2 Multiple Scanning Mode where the count of the sheet button was not updated properly.
- Android: Fixed an issue where the use case could not find
UpcandEanbarcodes with extensions in the RTU-UI screen.
- General:
- β οΈ Breaking changes:
- General:
- Removed support for
.NET 8TargetFramework. Now the SDK supports.NET 9and.NET 10TargetFrameworks. - SDK initialization process:
- Removed
SBSDKInitializerclass that was used for Initializing the SDK. Please useScanbotSDKMain.Initialize(...)instead. - Renamed the
SBSDKConfigurationclass toSdkConfiguration. Used while initializing the Scanbot SDK. - The
licenseKeyparameter was moved from theInitialize(...)method to theSdkConfigurationclass. - Another overload of
Initialize(MauiAppBuilder builder, string licenseKey, SBSDKConfiguration configuration)has been replaced byInitialize(SdkConfiguration configuration, MauiAppBuilder builder).
- Removed
- API Updates:
- Removed
ScanbotSDKMain.CommonOperations,ScanbotSDKMain.Rtu, andScanbotSDKMain.Detector. Moved the features to a flat hierarchy, i.e., directly underScanbotSDKMain.- Additionally, The
DetectorandRtufeatures are merged into a Single API per scanner. Some document specific features are also moved insideIScanbotDocument. E.g.,AnalyzeQualityOnImageAsync(..). - Removed
ScanbotSDKMain.CommonOperations.AnalyticsAPI instance and added the analytics function directly toScanbotSDKMain.SetAnalyticsSubscriber(...);
- Additionally, The
- Renamed all the RTU UI APIs from
LaunchAsync(...)toStartScannerAsync(...). - Renamed all the
Detect#ScannerName#Async(...)toScanFromImageAsync(...). - All the APIs accepting
PlatformImageinput are replaced byImageSource.- Though you can still use
PlatformImagenative representation to easily create anImageRef. Please seeImageRef.FromNative(...). ImageRef is Scanbot SDKs class for efficiently handling and managing Images.
- Though you can still use
- Removed
- Mock Camera:
- Moved
ScanbotSDKMain.CommonOperations.ConfigureMockCamera(...)toScanbotSDKMain.MockCamera(...). - Updated the method signature of
ConfigureMockCamera(MockCameraConfiguration configuration)toResult MockCamera(string imageFileUri, string captureFileUri = null, bool refreshOnEachFrame = false).
- Moved
- Result wrapper for all the RTU UI scanners is updated to a new structure for handling the results, that provides an
Exceptionobject when errors occur during the operation. - All the operations are wrapped under the new Result wrapper. See
ScanbotSDK.MAUI.Common.ResultandScanbotSDK.MAUI.Common.Result<T>. - Removed
Clone()method fromImageRef. - Removed
ImageRefProfilerclass. Moved the make snapshot method toImageRefclass.
- Removed support for
- Feature removal:
- Removed all RTU-UI v1 scanners and related types. All RTU-UI scanners have been upgraded to RTU-UI v2.
- Removed the deprecated legacy
IScannedPageAPIs:SetFilterAsync(...),GetFilteredDocumentPreviewAsync(...),ResizeAsync(...),RotateAsync(...), andDetectDocumentAsync(...). - Removed the Medical Certificate processing features and all related types.
- Removed the dedicated
EHICprocessing APIs and all related types.EHICcards can now be scanned usingDocument Data Extractor.
- Document Scanner:
- Removed
IDocumentDetector,ICroppingScreen, andIDocumentScannerinterfaces and moved all the APIs to a singleIScanbotDocumentAPI. - All the Legacy
IScannedPageaccessing APIs are moved fromIScanbotOperationstoIScanbotLegacyPage. SeeScanbotSDKMain.LegacyPage. - All the related
IScannedDocumentandIPageAPIs with identifier typeGuidare replaced with typestring. - Classic Component - DocumentScannerView:
- Renamed the events
OnSnappedDocumentImageResultandOnUpdateDetectionStatustoOnSnappedDocumentResultandOnFrameDetectionResult. Similarly renamed the customEventAgsfor both the events to match with the event name.
- Renamed the events
- Removed
- Image Processing:
- Moved all the Image processing APIs from
ScanbotSDKMain.CommonOperationsto a new dedicated APIIScanbotImageProcessor. - All APIs now accept
ImageRefinstead ofPlatformImage. Note: You may also createImageReffrom Native as well asImageSourceobject. - ImageRef: Replaced type literal
IfAvailablewithAutoinEncryptionModeenum. - ImageRef: Renamed
RoitoCropRectinPathImageLoadOptions,RawImageLoadOptions,BufferImageLoadOptions, andBasicImageLoadOptions.
- Moved all the Image processing APIs from
- PDF Generator:
- Moved all the PDF APIs from
ScanbotSDKMain.CommonOperationsto a new dedicated APIIScanbotPdfGenerator. - PDF generation now accepts a list of
ImageSourceandImageRefinputs. Previously, onlyFileImageSourcewas supported.
- Moved all the PDF APIs from
- TIFF Generator:
- Moved the TIFF API from
ScanbotSDKMain.CommonOperationsto a new dedicated APIIScanbotTiffGenerator. - TIFF generation now accepts a list of
ImageSourceandImageRefinputs. Previously, onlyFileImageSourcewas supported.
- Moved the TIFF API from
- OCR Engine:
- Moved the OCR API from
ScanbotSDKMain.CommonOperationsto a new dedicated APIIScanbotOcrEngine. - OCR generation now accepts a list of
ImageSourceandImageRefinputs. Previously, onlyFileImageSourcewas supported.
- Moved the OCR API from
- Document Quality Analyzer:
- Moved the API from
ScanbotSDKMain.CommonOperationstoIScanbotDocument. - Now accepts
ImageRefandImageSourceinstead ofPlatformImage.
- Moved the API from
- MRZ Scanner:
- Removed
IMrzDetectorandIMrzScannerinterfaces and moved all the APIs to a singleIScanbotMrzAPI. - Now accepts
ImageRefandImageSourceinstead ofPlatformImage.
- Removed
- Text Pattern Scanner:
- Renamed
ITextPatternScannertoIScanbotTextPatternAPI.
- Renamed
- VIN Scanner:
- Renamed
IVinScannertoIScanbotVinAPI.
- Renamed
- Document Data Extractor:
- Removed
IDocumentDataExtractorandIDocumentDataDetectorinterfaces and moved all the APIs to a singleIScanbotDocumentDataExtractorAPI. - Updated the namespace from
ScanbotSDK.MAUI.DocumentDataExtractortoScanbotSDK.MAUI.DocumentData. - The
ScanFromImageacceptsImageRefandImageSourceinstead ofPlatformImage.
- Removed
- Check Scanner:
- Removed
ICheckDetectorandICheckScannerinterfaces and moved all the APIs to a singleIScanbotCheckAPI. - Now accepts
ImageRefandImageSourceinstead ofPlatformImage.
- Removed
- Credit Card Scanner:
- Removed
ICreditCardDetectorandICreditCardScannerinterfaces and moved all the APIs to a singleIScanbotCreditCardAPI. - Now accepts
ImageRefandImageSourceinstead ofPlatformImage.
- Removed
- Barcode Scanner:
- Renamed
IBarcodeScannertoIScanbotBarcodeand the API object fromScanbotSDKMain.BarcodeScannertoScanbotSDKMain.Barcode. - Changed the type of the
ScannerConfigurationproperty inBarcodeScannerScreenConfigurationfromCommonBarcodeScannerConfigurationtoBarcodeScannerConfiguration. - The
MicroQrbarcode format has been removed from the list of common barcode formats.
- Renamed
- General:
- π Under the hood:
- Updated the .NET bindings to .NET SDK 8.0.0 (see our NET changelog for more under the hood changes).
- Upgraded the native Scanbot iOS SDK to v8.0.4 and Android SDK to v8.0.1.
- Upgraded
libzuecilib dependency to 1.0.1. - Added
snowflake-arctic-embed-xslib dependency toeadfba3b. - Android:
libittnotifyis no longer linked. - Android: Fixed
NoClassDefFoundError: LocalBroadcastManager missingthat happened during dependency tree resolving when final app used newer version of androidx dependencies. - Android: Dropped
SharedPreferencesusage for the License Key storing. - Android: The SDK Project has been switched to
compileSdk = 36. - Android: The SDK Project has been switched to AGP 8.10.1.
- Android: The SDK Project has been switched to Kotlin 2.1.21.
- Android: Upgraded
Daggerlib dependency to 2.56.2. - Android: Upgraded
Kotlin Standard Librarydependency to 2.1.21.
MAUI - Version 7.1.1 (29 Oct 2025)β
- π New:
- Barcode Scanner:
- Barcode configurations for 1D barcode types have a new field
MinimumNumberOfRequiredFramesWithEqualRecognitionResultthat requires this number of frames on which the barcode has to be detected.
- Barcode configurations for 1D barcode types have a new field
- Check Scanner:
- We now extract the field after the account number on US checks. The name in the result is
CheckNumber. Note that this name is only based on common usage and not on any enforced standard.
- We now extract the field after the account number on US checks. The name in the result is
- Barcode Scanner:
- π Improvements:
- Check Scanner:
- Updated the documentation for US check field.
- Improved the handling of scanning results when the detection mode
DetectAndCropDocumentis set.
- Check Scanner:
- π Bug fixes:
- Document Scanner:
- iOS: Fixed a bug in RTU-UI that did not always crop images from the photo library.
- Android: Fixed an issue with an empty
DocumentQualitywhenAcknowledgementModewas set toBadQuality. - Android: Fixed a bug where the usage guidance wouldn't display properly on screen startup.
- Android: Fixed the image size on the review screen when in horizontal layout.
- Check Scanner:
- Fixed a bug in the implementation of the US check standard which lead to rejection of valid checks.
- General:
- iOS: Fixed a bug in the RTU-UI that prevented the proper display of the view finder in landscape mode.
- Android: Fixed 16 KB page size support for the TFLite native library.
- Android: Fixed an issue where
PdfUriwas returned instead ofTiffUriinScannedDocument.CreateTiffAsync(...).
- Document Scanner:
- β οΈ Breaking changes:
- Barcode Scanner:
- The field
MinConfirmationsStandaloneEANinBarcodeAccumulationConfigurationwas moved and renamed to the fieldMinimumNumberOfRequiredFramesWithEqualRecognitionResultExtensionlessinBarcodeFormatUpcEanConfiguration.
- The field
- Barcode Scanner:
- π Under the hood:
- Updated ScanbotSDK.NET to 7.1.1.
- Updated the native Android SDK to Android Document SDK 7.1.2.
- Updated the native iOS SDK to iOS Document SDK 7.1.4.
MAUI - Version 7.1.0 (11 Sep 2025)β
- π New:
- Document Scanner:
- RTU-UI v2: Added an auto-rotate document option. The document will now be automatically rotated based on the text orientation detected by the Document Quality Analyzer. See
CameraScreenConfiguration.AutoRotateImages(objDocumentScanningFlow.Screens.Camera.AutoRotateImages). Enabled by default. - Classic Component: Added new
DocumentScannerViewclassic component. - Introduced advanced generation settings for PDFs and TIFFs.
- Added a new document detection status
OkButTooDark. - Added the ability to show custom images in the Intro Screen for Document Scanner RTU-UI v2.
- RTU-UI v2: Added parameter
DocumentScanningFlow.ShowReviewScreenOnStartthat allows showing the Review Screen immediately if the scanner is opened with an existent document ID. E.g. document edit mode. - RTU-UI v2: Added an option to automatically navigate to the Review Screen after each scan. Use
DocumentScanningFlow.Screens.Camera.OpenReviewAfterEachScan = true. - RTU-UI v2: Added an option to open either the first or the last page when the Review Screen is opened. Use
DocumentScanningFlow.Screens.Review.ShowLastPageWhenAdding = true.
- RTU-UI v2: Added an auto-rotate document option. The document will now be automatically rotated based on the text orientation detected by the Document Quality Analyzer. See
- Document Quality Analyzer (DoQA):
- Can now return the orientation of the document. Enabled by
DocumentQualityAnalyzerConfiguration.DetectOrientation. - Optionally returns a
QualityHeatmapproperty in the result. - Added support for an advanced on-image scanning configuration
ScanbotSDKMain.CommonOperations.DetectDocumentQualityAsync(...)call.
- Can now return the orientation of the document. Enabled by
- Credit Card Scanner:
- Added new Credit Card Scanner feature with Ready-to-Use UI (RTU-UI v2). See
ScanbotSDKMain.Rtu.CreditCard.LaunchAsync(...). - It can also be used with Scan from Image approach. See
ScanbotSDKMain.Detector.CreditCard.DetectOnImageAsync(...).
- Added new Credit Card Scanner feature with Ready-to-Use UI (RTU-UI v2). See
- MRZ Scanner:
- New RTU-UI v2 is now available for MRZ Scanner. See
ScanbotSDKMain.Rtu.MrzScanner.LaunchAsync(...). - Added support for non-ICAO conformant machine-readable zones on US border crossing cards.
- New RTU-UI v2 is now available for MRZ Scanner. See
- Text Pattern Scanner:
- New RTU-UI v2 is now available for Text Pattern Scanner. See
ScanbotSDKMain.Rtu.TextPatternScanner.LaunchAsync(...).
- New RTU-UI v2 is now available for Text Pattern Scanner. See
- Check Scanner:
- New RTU-UI v2 is now available for Check Scanner. See
ScanbotSDKMain.Rtu.CheckScanner.LaunchAsync(...). For legacy scanner, check the breaking changes.
- New RTU-UI v2 is now available for Check Scanner. See
- VIN Scanner:
- New RTU-UI v2 is now available for VIN Scanner. See
ScanbotSDKMain.Rtu.VinScanner.LaunchAsync(...). For legacy scanner, check the breaking changes. - Added a new property
ExtractVINFromBarcodeinVinScannerConfigurationthat allows VIN data extraction from barcodes.
- New RTU-UI v2 is now available for VIN Scanner. See
- Document Data Extractor (DDE) (formerly Generic Document Recognizer):
- New RTU-UI v2 is now available for DDE Scanner. See
ScanbotSDKMain.Rtu.DocumentDataExtractor.LaunchAsync(...). - Now supports fallback to extraction of only the MRZ on unsupported documents.
- Added support for German driver qualification card.
- Document field validation now supports two additional statuses:
InferredandIgnored. - Generic document fields now support
ParsedDataattributes for standardized data (ISO 8601 dates, ISO 3166-1 countries, "Male"/"Female" gender). - Added support for multiple new document types:
- ID Cards from Brazil, Hong Kong, Macao, and China.
- Chinese Entry and Exit Permits.
- Returns the issuing series of German ID Cards as part of the returned document as the
Seriesfield. - Now supports the front side of many more EU driver's licenses.
- Partial support for parsing of German addresses. For respective ID cards, address parsing can be enabled via a new
DeAddressParserConfiguration. Parsed addresses are stored as child documents.
- New RTU-UI v2 is now available for DDE Scanner. See
- Barcode Scanner:
- Added support for barcode types Pharma Code, Pharma Code Two Track and PZN (Pharmazentralnummer).
- Added support for the HIBC barcode document format.
- Added support for an advanced on-image scanning configuration for
ScanbotSDKMain.Detector.Barcode.DetectBarcodesAsync(...)call. - Added support for an advanced scanning configuration for
BarcodeScannerViewclassic component. - Added ability to configure common barcode properties via
BarcodeFormatCommonConfiguration. - Added
MinimumSizeScoreto barcode configurations; barcodes withSizeScore < MinimumSizeScoreare ignored. - Introduced
StrictModefor certain barcode configurators (QR Code,Micro QR Code,rMQR Code,PDF417,MicroPDF417andgs1Composite) to balance detection rate and false positives. - Classic Component: Added new properties,
OnlyAcceptDocuments,EngineMode,ExtractedDocumentFormatsandBarcodeFormatConfigurationsinBarcodeScannerViewandBarcodeScanAndCountView. - Added the ability to return the barcode image in the resulting object via
BarcodeScannerConfiguration.ReturnBarcodeImage. - Introduced new barcode engine modes
NextGen,NextGenLowPower,NextGenFarDistanceandNextGenLowPowerFarDistance. SeeBarcodeScannerEngineMode.NextGenis optimized for detecting multiple barcodes in live mode, in particular, bounding boxes of 1D barcodes are predicted as close as possible.NextGenLowPoweris optimized for scanning barcode batches on low-power devices.NextGenFarDistancewhich is optimized for scanning from far distances.NextGenLowPowerFarDistancethat is optimized for scanning barcodes from far distances on low-power devices.
- Barcode scanning results have been enhanced with more detailed information, including
SizeScore. SeeBarcodeItem. - Added new predefined subsets of barcode formats (1D, 2D, Postal, Pharma, etc.). Old sets removed.
- Android:
CloseAsync()also supported on Android platform. SeeScanbotSDKMain.Rtu.BarcodeScanner.CloseAsync(). - Added
ExtendedQuadandExtendedQuadNormalizedfields to theBarcodeItemclass to represent extended quads for 1D barcodes. BarcodeItemhas a new fieldRawBytesEncodingsthat contains the precise character encoding information ofRawBytes.BarcodeItemhas a new fieldStructuredAppendInfofor messages split across multiple barcodes.BarcodeScannerConfigurationhas a new fieldAccumulationConfigwhich allows the accumulation of barcodes over multiple frames in live mode.BarcodeItemhas a new fieldGlobalIndexto identify a barcode across multiple frames.- RTU-UI v2: Added
SelectedZoomFactor: Doublemetadata field inBarcodeScannerUiResultwith the value that the user used to scan the barcode.
- General:
- .NET: Added support for .NET 9 SDK, in addition to .NET 8 SDK.
- .NET: Added target frameworks
.net8.0and.net9.0specifically. - Added support for an advanced on-image scanning configuration for below
ScanbotSDKMain.Detector.<Scanner>.DetectOnImageAsync(...)DocumentDataExtractor.DetectOnImageAsync(...)Ehic.DetectOnImageAsync(...)MedicalCertificate.DetectOnImageAsync(...)Mrz.DetectOnImageAsync(...)Check.DetectOnImageAsync(...)CreditCard.DetectOnImageAsync(...)
- Added analytics support for tracking and managing the SDK usage analytics. Please see
ScanbotSDKMain.CommonOperations.Analyticsservice. - Cropped images returned as part of the scanner results are now represented as image references
ImageRefthat can be converted to base64 or saved to a path. - Added exported array constants for union type values to clearly list all available options. See
BarcodeFormats. - Android: Added support for 16KB page size.
- Android: Added a new property
KeepScreenOnin all RTU-UI v2 scanner screen configurations to keep the device screen awake while scanning.
- Document Scanner:
- π Improvements:
- Document Scanner:
- Improved the Document Scanner RTU-UI v2 acknowledgment's bad image quality hint by adding the ability to present up to 5 lines.
- Increased performance for Document Scanner algorithms.
- iOS: Improved performance when editing a page in RTU-UI v2 Document Scanner Review Screen.
- iOS: Improved the accessibility handling in RTU-UI v2 Document Scanner. Accessibility for the document preview button is now activated only when scanned pages are available.
- iOS: RTU-UI v2: The
ScannedDocument.Page.AddPage()function now has the ability to also detect the document while adding a new PlatformImage(as ScannedPage). - iOS: Rebalanced the internally used photo capture settings to better match the photo quality prioritization modes. The mode speed is now significantly faster, the mode balanced is a bit faster, and the mode quality is a bit slower with the best possible image quality.
- Document Quality Analyzer (DoQA):
- Guarantee the same document quality score for 90 degrees rotated images.
- Speed improvements. Note: document quality scores may slightly change for the same input images when compared to the previous version of the DoQA.
- OCR Engine:
- Improved handling of special characters like umlauts when frame accumulation is used.
- Image Processing:
- New Image Processor preset
BinarizationFilterPreset.Preset5for documents with barcodes.
- New Image Processor preset
- PDF & TIFF Generation:
- PDF Generator with OCR layer now handles non-ASCII characters correctly.
- MRZ Scanner:
- For pre-2022 Costa Rican passports, ID Number is returned as
DocumentNumberand Sequence Number asPersonalNumberin MRZ fields. - On US border crossing permits, the document number is now returned in the correct field.
- Dates in MRZ now also support
ParsedDatacorrectly.
- For pre-2022 Costa Rican passports, ID Number is returned as
- Text Pattern Scanner:
- Improved performance with the same quality.
- Now supports XNNPACK for faster inference.
- VIN Scanner:
- Validation of VINs implements the full ISO 3779 standard, reducing false positives.
- Check Scanner:
- If image cropping is enabled and is successful, check recognition is performed on the crop instead of the original image.
- Medical Certificate Scanner:
- Date recognition in Medical Certificate forms is now based on the Scanbot OCR Engine and shows significant quality improvements.
- Document Data Extractor (DDE):
- Digits can no longer be recognized as part of given names or surnames.
- Higher accuracy for document classification.
- General speed improvements.
- Now detects whether a document is in focus and only starts the heavy recognition pipeline when image quality is suitable.
- Can now detect glare in images. Fields obstructed by glare will be returned with a validation status of
Obstructed. - Classification for documents with MRZ is more stable.
- Added normalization before date recognition.
- More consistent usage of common field types.
- Improved maiden name processing for
DePassportandDeIdCard. - Now also supports the new German ID card format issued starting 2024.
- Barcode Scanner:
- By default, Code 93 now includes check digits in the result. To disable this and restore the previous behavior, set
StripCheckDigits = true. - Significant speed-up in live mode on very large input resolutions.
- Improved barcode detection for various barcode types.
- GS1 Composite codes are now processed faster when scanned from image.
- More robust QR code recognition (timing patterns, alignment, artistic QR codes).
- QR codes with non-square finder patterns and embedded in adversarial backgrounds can now be recognized.
- Improved quiet zone checks for
ITF,Code 11,MSI Plessey,IATA 2 of 5,Industrial 2 of 5, andCode 25. - Improved the false positive rate for
ITFbarcodes. - Added the option to ignore barcodes that do not decode to one of the accepted document formats for Barcode Scanner RTU-UI v2
BarcodeScannerConfiguration.OnlyAcceptDocuments. - Added support for
MaximumTextLengthconstraint onCode 11,Code 39,Code 93,Code 128, andCodabarbarcode formats. - Improved performance when scanning four-state postal barcodes.
- Added new accessibility descriptions for some buttons in
BarcodeTextLocalization. - Android: All Barcode AR overlays are now based on
ExtendedQuads. - Android: Improved handling of back action with multiple dialogs and bottom sheets.
- iOS - Classic Component: - Further improvements in memory management.
- By default, Code 93 now includes check digits in the result. To disable this and restore the previous behavior, set
- Document Scanner:
- π Bug Fixes:
- Document Scanner:
- RTU-UI v2: Fixed a memory leak issue from the Document Scanner when closing the scanner.
- iOS: Fixed UI bug in Document Scanner RTU-UI v2 where the bar buttons weren't properly grayed out when disabled.
- iOS: Fixed processing of still images of an indexed color space model in all scanners, DoQA, and PDF/TIFF generators.
- iOS: Fixed an issue on simulators where the shutter button was missing in the RTU-UI Document Scanner.
- Android: Cropping View: Fixed an issue with a broken layout after screen rotation without recreating the view.
- Android: Fixed Document Scanner point sorting.
- Android: Clamped parametric filters radius to 127.
- Android: RTU-UI v2: Fixed an issue where the last scanned page's preview would not update on a specific layout configuration.
- Android: RTU-UI v2: Fixed an issue where the start of the activity without initializing the Scanbot SDK was leading to an application crash.
- Android: RTU-UI v1: Fixed insets for the shutter button when the app is built with
target_sdk >= 35. - Android: In Document Scanner RTU-UI v2,
PageSnapFeedbackNone()no longer prevents auto-transition to review screen at max pages limit. - Android: Removed accessibility container for user guidance image in Document Scanner RTU-UI v2.
- Android: Fixed Document Scanner
FillPolygonColor(not filled by default) RTU-UI v1. - Android: Fixed Document Scanner/Finder User Guidance default background for RTU-UI v1.
- Android: Fixed Document Scanner shutter button default color for RTU-UI v1.
- Android: Cropping Screen RTU-UI v2 status bar light/dark mode now correctly applied.
- Android: Cropping Screen RTU-UI v2 now returns result instead of canceling if no changes were made.
- Android: Document Scanner RTU UI v2: fixed the screen behavior on multiple manual snaps in "single page" mode.
- Android: Document Scanner RTU UI v2: fixed an issue where autofocus failed during the autosnap event.
- Document Data Extractor (DDE):(previously Generic Document Recognizer)
- Fixed DDE bug determining validation status when fields excluded.
- Fixed DDE bug for incorrect handling of Driver License expiry date validation.
- Fixed DDE bug for merging of
MaidenNameandSurnameon some German ID cards. - Resolved DDE high peak memory consumption issue.
- Document Quality Analyzer (DoQA):
- Fixed DoQA crash when
MaxImageSizewas 0. - Fixed DoQA patch size when
MinFraction= 1.
- Fixed DoQA crash when
- Text Pattern Scanner:
- Fixed Text Pattern Scanner incorrect output for Unicode symbols.
- Check Scanner:
- Android: Fixed Check Scanner User Guidance default background (was absent) for RTU-UI v1.
- Medical Certificate Scanner:
- Android: Fixed Medical Certificate Scanner User Guidance default background (was absent) for RTU-UI v1.
- Barcode Scanner:
- Fixed returned results for all types of
UpcEanExtensionBehavior. - Fixed checksum for
Code 39barcode format. - Fixed an overflow when decoding
Micro QR Codewith wrong bits in numeric mode. - Fixed
MinimumTextLengthforITFbarcode format (checked symbols instead of text length). - Fixed sorting of quad points for four-state/postal barcode types.
- In
Code 11barcodes with 10 data digits, whenChecksumis enabled andStripCheckDigitsis true, scanner now correctly strips both check digits. - Classic Component: Fixed the
OverlayConfigurationproperty not updating while barcode scanning was in progress. - iOS - Classic Component: Fixed an issue where rapid stopping and starting the camera session could lead to a crash or memory leak.
- iOS: Fixed a bug in Barcode Scanner RTU-UI v2 where the flip camera button was not resetting to the widest available camera.
- iOS: Fixed a UI bug in Barcode Scanner RTU-UI v2 where the sheet button overlapped the action bar.
- iOS: Fixed a bug in AR Barcode Scan and Count where the scanner would get stuck if no barcode was detected.
- iOS: Fixed an issue in RTU-UI v2 where the introduction screen appeared automatically even when camera access was denied.
- iOS: Fixed an issue where quickly stopping and starting the camera session of any scanner screen could lead to a crash or unpredictable behavior.
- iOS: Fixed a crash in barcode scanner feature caused by camera access being restricted by system-wide settings (e.g. Parental Controls / Screen Time).
- Android:
FindAndPickScanningMode.SheetContent.BarcodeItemImageVisiblein RTU-UI v2 now correctly applies visibility. - Android: Fixed an issue where the
ExtractedDocumentwas not being generated for GS1 HandlingDecodeStructureandDecodeFull. - Android: Barcode Scanner RTU UI v2: fixed an issue where the back button navigation did not work.
- Fixed returned results for all types of
- iOS: Fixed a bug with scanned documents cloning when using per-file encryption.
- Android: Fixed screen insets for Android API 35 with forced edge-to-edge mode by opting out for RTU-UI v1 screens.
- Android: In RTU-UI v2, modal dialog no longer appears below status bar.
- Android: Accessibility content for action buttons in RTU-UI v2 now properly applied.
- Document Scanner:
- β οΈ Breaking changes:
- Package Structure:
- In
v7.1.0, the packaging structure has changed. Unlikev6.1.0, your application project must now also reference theScanbotSDK.MAUIpackage directly. Transitive references are no longer sufficient, because native Android and iOS SDK assets are delivered through a shared reference mechanism to avoid doubling package size.
- In
- General:
- Targeting .NET 9 requires a minimum
microsoft.net.sdk.iosworkload id18.5.9199, which depends on Xcode 16.4. - Removed the Image Picker service i.e. the
ScanbotSDKMain.ImagePickerAPI. - RTU-UI v2: Replaced the
ScannedDocument.Page.AddPage(PlatformImage)function withScannedDocument.Page.AddPage(PlatformImage image, bool detectDocument, ParametricFilter[] filters = null, int index = -1);.
- Targeting .NET 9 requires a minimum
- Legacy Scanners:
- Check Scanner:
ScanbotSDKMain.Rtu.CheckScannerreturns the RTU-UI v2 Check Scanner. The legacy RTU-UI v1 Check Scanner was moved toScanbotSDKMain.Rtu.Legacy.CheckScanner. Check related configurations and namespaces. - VIN Scanner:
ScanbotSDKMain.Rtu.VinScannerreturns the RTU-UI v2 VIN Scanner. The legacy RTU-UI v1 VIN Scanner was moved toScanbotSDKMain.Rtu.Legacy.VinScanner. Check related configurations and namespaces.
- Check Scanner:
- Native Library Update:
- iOS: The iOS SDK is now included as an
.xcframework(previously provided as a.framework).- Note: Please remove the
RuntimeIdentifierconditions for device(arm64) and simulator(x86) from the project(.csproj) file.
- Note: Please remove the
- Android: The Android SDK is now packaged with multiple
.aarfiles, split by module (previously provided as a single combined.aar).- Note: Please clear your projectβs build cache completely when upgrading from a previous
ScanbotSDKversion to prevent potential conflicts.
- Note: Please clear your projectβs build cache completely when upgrading from a previous
- iOS: The iOS SDK is now included as an
- RTU-UI v1 Removal:
- Removed RTU-UI v1 scanner, please use the corresponding RTU-UI v2 methods, that were newly added:
- Removed
ScanbotSDKMain.RTU.MrzScanner.LaunchMrzScannerAsync(...). UseScanbotSDKMain.Rtu.MrzScanner.LaunchAsync(...)instead. - Removed
ScanbotSDKMain.RTU.TextDataScanner.LaunchTextDataScannerAsync(...). UseScanbotSDKMain.Rtu.TextPatternScanner.LaunchAsync(...)instead. - Removed
ScanbotSDKMain.RTU.Legacy.BarcodeScanner.LaunchBarcodeScannerAsync(...)and...LaunchBatchBarcodeScannerAsync(...). UseScanbotSDKMain.Rtu.BarcodeScanner.LaunchAsync(...)instead. - Removed
ScanbotSDKMain.RTU.LicensePlateScanner.LaunchLicensePlateScannerAsync(...). - Removed
ScanbotSDKMain.RTU.GenericDocumentRecognizer.LaunchGenericDocumentRecognizerAsync(...).
- Removed
- Removed RTU-UI v1 scanner, please use the corresponding RTU-UI v2 methods, that were newly added:
- Feature Renaming (RTU-UI and Detectors):
- Renamed
GenericDocumentRecognizertoDocumentDataExtractorand related types as well. - Renamed
CheckRecognizertoCheckScannerand related types as well. - Renamed
MedicalCertificateRecognizertoMedicalCertificateScannerand related types as well. - Renamed
TextDataScannertoTextPatternScannerand related types as well.
- Renamed
- API changes:
- Updated the RTU-UI APIs for the below scanners:
- Renamed
ScanbotSDKMain.RTU...toScanbotSDKMain.Rtu.... - Renamed
ScanbotSDKMain.Detectors...toScanbotSDKMain.Detector... - Renamed
ScanbotSDKMain.RTU.MRZ...toScanbotSDKMain.Rtu.Mrz... - Renamed
ScanbotSDKMain.RTU.VIN...toScanbotSDKMain.Rtu.Vin.... - Renamed
ScanbotSDKMain.RTU.TextData...toScanbotSDKMain.Rtu.TextPattern.... - Renamed
ScanbotSDKMain.RTU.EHIC...toScanbotSDKMain.Rtu.Ehic.... - Replaced
ScanbotSDKMain.RTU.GenericDocument...toScanbotSDKMain.Rtu.DocumentDataExtractor....
- Renamed
- Simplified the API naming by updating all the:
ScanbotSDKMain.Detector.<ScannerName>.Detect<ScannerName>OnImageAsync()toScanbotSDKMain.Detector.<ScannerName>.DetectOnImageAsync(..).ScanbotSDKMain.RTU.<ScannerName>.Launch<ScannerName>Async()toScanbotSDKMain.Rtu.<ScannerName>.LaunchAsync().ScanbotSDKMain.RTU.<ScannerName>.Close<ScannerName>Async()toScanbotSDKMain.Rtu.<ScannerName>.CloseAsync().- Note: Not all the new RTU-UI v2 scanners contain the
CloseAsync()feature(aka Force closing feature of the scanner).
- IMPORTANT - Namespaces:
- All the
RTU-UIand theDetectOnImageAPIs are under theScanbotSDK.MAUI.<ScannerName>, e.g.ScanbotSDK.MAUI.Check. - All the configuration and result classes for the
DetectOnImagefeature are under theScanbotSDK.MAUI.Core.<ScannerName>, e.g.ScanbotSDK.MAUI.Core.Check.
- All the
- Updated the RTU-UI APIs for the below scanners:
- Result Type Changes:
- For the RTU-UIs, Updated the result APIs to be wrapped under a generic type
RtuResult<ScannerResultType>object. It will provide more information about the scanner result status, and error message. - The EHIC scanner
RTU-UInow returnsRtuResult<EuropeanHealthInsuranceCardRecognitionResult>andDetectOnImagereturnsEuropeanHealthInsuranceCardRecognitionResultresult respectively. - The Medical Certificate scanner
RTU-UInow returnsRtuResult<MedicalCertificateScanningResult>andDetectOnImagereturnsMedicalCertificateScanningResultresult respectively. - The Check Scanner
RTU-UI(Legacy v1)now returnsRtuResult<CheckScanningResult>andDetectOnImagereturnsCheckScanningResultresult respectively. - The VIN Scanner
RTU-UI(Legacy v1)now returnsRtuResult<VinScannerResult>result. - The Document Scanner
RTU-UInow returnsRtuResult<ScannedDocument>result. - The Barcode Scanner
RTU-UInow returnsRtuResult<BarcodeScannerUiResult>andDetectBarcodesOnImagereturnsBarcodeScannerResultresult respectively. - The
ScanbotSDKMain.CommonOperations.DetectDocumentQualityAsync(...)now returnsDocumentQualityAnalyzerResult, which returns more information.
- For the RTU-UIs, Updated the result APIs to be wrapped under a generic type
- Configuration Object Changes:
- In
SBSDKConfigurationreplaced propertyDetectorTypeof typeDocumentDetectorTypewith propertyEngineModeof typeDocumentScannerEngineMode. The default behavior still remains the same, ML based. - Renamed enum
DocumentDetectorModetoDocumentScannerEngineMode. - Replaced PDF
PDFConfigurationwithPdfConfiguration. - Replaced TIFF
TiffOptionswithTiffGeneratorParameters. - Renamed
DocumentScannerConfigurationtoDocumentScannerScreenConfiguration. - Renamed
BarcodeScannerConfigurationtoBarcodeScannerScreenConfiguration.
- In
- Document Scanner Configuration:
- Removed properties (
AcceptedAngleScore,AcceptedSizeScore, etc.) fromDocumentScannerCameraConfiguration, moved toDocumentScannerParameters. AcceptedSizeScoreandAcceptedAngleScorerange changed from0..1to0..100.- Renamed
IgnoreBadAspectRatiotoIgnoreOrientationMismatchinDocumentScannerScreenConfiguration,DocumentScannerConfigurationandFinderDocumentScannerConfiguration. - iOS: Renamed
DetectorModetoEngineModeinDocumentScannerConfigurationandFinderDocumentScannerConfiguration.
- Removed properties (
- VIN Scanner Configuration:
- Renamed
MinimumNumberOfRequiredFramesWithEqualRecognitionResulttoMinimumNumberOfRequiredFramesWithEqualScanningResultinVinScannerConfiguration.
- Renamed
- Barcode Scanner:
- Classic Component: IMPORTANT: Replaced the
BarcodeFormatswithBarcodeFormatConfigurations. Now we can set more advanced configuration for an individual barcode format. We can still use the enums, see the example project implementation.
- Classic Component: IMPORTANT: Replaced the
- Changed default text values for
CameraPermissionstyled texts.
- Package Structure:
- π Under the hood:
- Updated ScanbotSDK.NET to 7.1.0.
- Updated the native Android SDK to Android Document SDK 7.1.1.
- Updated the native iOS SDK to iOS Document SDK 7.1.2.
MAUI - Version 6.1.0 (29 Jan 2025)β
- π New:
- Implemented new Ready-To-Use Document Scanner screen with extended scanning and reviewing capabilities. See Ready-to-Use UI for documentation and various use cases.
- Implemented new
ScannedDocumentAPI to perform document creation and editing. - Added support for German Health Insurance Card front-side and European Health Insurance Card to
IGenericDocumentRecognizerandIGenericDocumentDetector. - Added support for new barcode types Maxicode, rMQR code, Code 11 and Code 32.
- Added properties
AustraliaPostCustomerFormat,UseIata2Of5ChecksumandUseCode11ChecksumtoBarcodeAdditionalParametersandBarcodeRecognizerConfiguration. - Added new property
AddAdditionalQuietZonetoBarcodeScannerAdditionalConfig. - Added a new property
AllowEmptySubmissioninMultipleScanningModeto allow submission of an empty barcode list in the Multiple Barcodes use case in RTU-UI v2. - Added a new property
AccessibilityDescriptioninRoundButtonandButtonConfiguration.
- π Improvements:
- Each detector and UI feature is grouped more logically under
ScanbotSDKMain.RTUgroups all of the Ready-to-Use UI scanners for each feature.Detectorsgroups all of the image-based detectors for each feature.
- All SDK interfaces available via
ScanbotSDKMainare also registered for MAUI dependency injection when intializing the SDK with aMauiAppBuilder. - Document detector:
- Improved detection speed and robustness against orientation changes.
- Improved robustness against picking up random contours.
- Improved robustness against documents with colored corners, booklets, handheld documents, and cards, documents near edges of tables, and overlapping documents.
- AR overlay is enabled by default for
FindAndPickScanningModein Barcode Scanner RTU UI v2 screen. - For
Code128andItf, we improved the recognition of barcodes generated by defective thermal printers that do not print certain black bars correctly. - iOS: Improved sharpness of captured images in
IDocumentScannerby tweaking various timing related default values, such asInitialScanDelayandAutoSnappingDelay. - Android: Improved generic document recognition on static images.
- Each detector and UI feature is grouped more logically under
- π Bug fixes:
- Fixed KANJI mode for QR codes.
- Added missing
ParsedDocumenttoBarcode.RTU.v1.Barcodeso that formatted barcode data can be parsed inIBarcodeDetectorand our Barcode Classic Components. - Android: Minor fixes for appearance in RTU-UI v2 Barcode Scanner to make it consistent with its iOS counterpart.
- Android: Fixed point sorting in
ContourDetector. - Android: Fixed an issue with AR Overlay and barcode mapping in RTU UI v2, where the mapped image wasn't shown on the AR Overlay until the same barcode appeared in the list below.
- Android: Fixed image preprocessing for Document Quality Analyzer.
- Android: Fixed R8 obfuscation config for SDK logging classes.
- iOS: Fixed a bug in RTU-UI v2 Barcode Scanner where extended barcodes were displayed along with their non-extended versions.
- iOS: Fixed a UI issue in the RTU-UI v2 Barcode Scanner where a title that was too long would cut off the cancel button.
- iOS: Fixed a UI issue in the RTU-UI v2 Find & Pick scanner in button sheet mode where the counter badge was not visible.
- iOS: Fixed a UI issue in RTU-UI v2 finder where the background color overlapped with the line color.
- iOS: Fixed a crash when zooming with invalid
MinZoomandMaxZoomvalues. - iOS: Fixed a bug that did not mirror the front camera as expected.
- iOS: Fixed a bug in the Barcode RTU v1 result where the
Imageproperty inBarcodeResultBundleobject returned null even if theBarcodeScannerConfiguration.BarcodeImageGenerationTypeproperty was set toBarcodeImageGenerationType.CapturedImage.
- β οΈ Breaking changes:
- Dropped support for .NET 7.
- Renamed
ScanbotSDKclass toScanbotSDKMain. - Removed the
IReadyToUseUIServiceandIDataDetectionServicemeta-interfaces as all of the individual RTU and detector interfaces are available viaScanbotSDKMainor dependency injection. - Removed
IScreenMetricsas it was no longer in active use by the SDK. - Renamed
IImagePickerServicetoIImagePicker. - Renamed
IScanbotSDKServicetoIScanbotOperations. - Moved the RTU v1 Barcode Scanner and related code from
ScanbotSDK.MAUI.RTU.v1toScanbotSDK.MAUI.Barcode.RTU.v1. This coincides with a change in the previous release to group features in their appropriate namespace. - Replaced usage of
Barcode.RTU.v1.PolygonResultPointandCommon.PointFwithSystem.Drawing.PointF. - The previous version of the Document Scanner RTU UI had it's interfaces and configurations moved to the
ScanbotSDK.MAUI.Document.RTU.v1namespace.- This includes RTU interfaces such as
ICroppingScreenandIDocumentScanneras well as configurations such asCroppingScreenConfiguration,DocumentScannerConfigurationandFinderDocumentScannerConfiguration. - The RTU interfaces,
Document.RTU.v1.IDocumentScannerandDocument.RTU.v1.ICroppingScreenhave been marked as[Obsolete].
- This includes RTU interfaces such as
- Deprecated
IScannedPageand moved it to theScanbotSDK.MAUI.Document.Legacynamespace. The replacement is the newScannedDocumentandScannedDocument.PageAPIs. - Various existing detection and UI methods have been updated to use
PlatformImageinstead ofImageSource.- In most cases, extension methods are provided to allow
ImageSourceto still be used. - Methods using
FileImageSourcehave been left alone but may be updated toSystem.Uriin the future (with appropriate compatibility extensions added). - Conversion to
ImageSourcemay be needed in cases where it is used in a result type (for exampleCheckRecognizerResult,Barcode, etc).
- In most cases, extension methods are provided to allow
- Removed enum
BarcodeDensity.- Removed property
CodeDensityfromBarcodeAdditionalParameters.
- Removed property
- Renamed the values of the enum
DocumentDetectionStatus. - Removed enum values
ValidateandDecodefromGS1Handlingand replaced them withDecodeStructure,DecodeFull,ValidateStructureandValidateFull. - Removed property
SharpnessAcceptanceFactorfromGenericDocumentRecognizerConfigurationandGenericDocumentDetectorConfiguration. - Android: Changed
BarcodesRegexFilterconfig behavior for Barcode Scanner RTU UI v2. Barcodes are accepted if the barcode data contains the part that matches the regex.
- π Under the hood:
- iOS: For the iOS implementations of
CreatePdfAsyncandCreateSandwichPdfAsync, the updatedSBSDKPDFRendererOptionsis used to support PDF attributes instead of the now removedSBSDKPDFMetadataEditor. - Android: Added gs1-syntax-dictionary lib.
- Updated the native Android SDK to Android Document SDK 6.1.2.
- Updated the native iOS SDK to iOS Document SDK 6.1.1.
- iOS: For the iOS implementations of
MAUI - Version 5.1.1 (4 Oct 2024)β
- π Improvements:
- Re-added support for the net-8 target framework to make it easier to use our configuration classes and interfaces for unit testing.
- π Bug fixes:
- Fixed reference issues when using our MAUI package in more complex project structures.
MAUI - Version 5.1.0 (19 Sep 2024)β
- π New:
- Added new freshly designed RTU-UI version 2 for Barcode scanning with advanced agile configuration. Use
ScanbotSDK.ReadyToUseUIServiceto leverage the new UI. - Added support for the Micro PDF 417 barcode format.
- Added support for parsing of AAMVA Certificate of Title for motor vehicle barcodes.
- Added support for Canadian and UAE Check standards.
- Added new class-based image filters, ParametricFilter, for the ImageProcessor API:
- ScanbotBinarizationFilter
- CustomBinarizationFilter
- ColorDocumentFilter
- BrightnessFilter
- ContrastFilter
- GrayscaleFilter
- WhiteBlackPointFilter
- LegacyFilter (encapsulates the deprecated
ImageFiltertype filters).
- Added support for German residence permits (2011 and 2019 formats) in the
GenericDocumentRecognizer. Check property AcceptedDocumentTypes of typeGenericDocumentRootType[]in theGenericDocumentRecognizerConfigurationclass. - Added new class
DocumentQualityAnalyzerConfiguration. - Added new properties to the PDFConfiguration class used while creating a PDF file.
- Added new Data detection on still Image feature which can be accessed from
ScanbotSDK.DataDetectionServiceAPI. It will allow inputImageSourceand perform data detection for- Check
- EHIC (European Health Insurance Card)
- Generic Document
- Medical Certificate
- MRZ
- Added
UserDefinedFieldsin the class TiffOptions, used in the functionScanbotSDK.SDKService.WriteTiffAsync(...). - Added AcceptedBrightnessThreshold in the
DocumentScannerConfigurationandFinderDocumentScannerConfiguration. - Added ReturnCroppedDocumentImage in the
MedicalCertificateRecognizerConfiguration.
- Added new freshly designed RTU-UI version 2 for Barcode scanning with advanced agile configuration. Use
- π Improvements:
- Optimized camera preview quality and processing speed for all scanners.
- iOS:
- IMPORTANT: Changed the default rear cameras on all scanners to the triple or dual camera. On some devices with triple camera this results in a different view port (more zoomed in). Please make sure to adapt your zoom ranges and factors.
- Added support of haptic feedback on capable devices.
- Android:
- Changed the touch to focus square in the native camera view to a circle.
- Added several missing, and mostly platform specific, properties to the RTU v1 scanner configurations:
- For
BarcodeScannerConfigurationandBatchBarcodeScannerConfiguration, the following properties where exposed:- For Android only (accessible through #if ANDROID):
AutoCancelTimeout(This property is Android only for theBatchBarcodeScannerConfiguration.)CameraPreviewModeUseButtonsAllCapsDelayAfterScanTouchToFocusEnabledMinFocusDistanceLock
- For iOS only (accessible through #if iOS):
FocusLockEnabledFocusLockPositionDoubleTapToZoomEnabledPinchToZoomEnabledShouldAnimateZooming
- For Android only (accessible through #if ANDROID):
- For
- π Bug fixes:
- For BarcodeFormat.Pdf417, a single case to generate clusters was not covered, which led to a crash.
- Fixed issue with misaligned barcode polygons on some devices with horizontal orientation.
- β οΈ Breaking changes:
- IMPORTANT - Classic Component: The MAUI Classic UI Components:
BarcodeScannerViewandBarcodeScanAndCountViewmust now be wrapped insideScanbotClassicUIContainer. - IMPORTANT - Namespaces: There are namespace changes for almost every RTU UI configuration. Earlier all the RTU UI configurations were available in the
ScanbotSDK.MAUInamespace. But now they are available in the specific module folders. For e.g:ScanbotSDK.MAUI.DocumentScannerConfigurationisScanbotSDK.MAUI.Document.DocumentScannerConfigurationScanbotSDK.MAUI.CheckRecognizerConfigurationisScanbotSDK.MAUI.Check.CheckRecognizerConfiguration- For all the other class namespaces, Please refer to the API references here.
- IMPORTANT - ImageFilter: Replaced all the properties and functions using
ImageFilterenum withParametricFilterobject in theIScannedPageinterface. This change can impact the data saved in the local storage, while migrating from the previous versions. Note: We can also set theImageFiltertoParametricFilterdirectly. The SDK will implicitly convert the old type and return aParametricFilter. - Replaced parameter
ImageFilterwithParametricFilterin theScanbotSDK.SDKService.ApplyImageFilterAsync(...)method. - IMPORTANT - BarcodeScanner: Our Ready to Use UI v1 barcode scanners are now deprecated and it is highly encouraged to use the new RTU UI v2 barcode scanner API. All RTU v1 code has been moved to the
ScanbotSDK.MAUI.RTU.v1namespace, with RTU v2 code existing underScanbotSDK.MAUI. Also moved the Legacy Barcode Scanners fromScanbotSDK.ReadyToUseUIServicetoScanbotSDK.LegacyBarcodeScanner. - The structure of barcode formatted results has been changed from record classes to using GenericDocument. See API reference for the new structure here. This change affects RTU UI v1, however, the same structures are used across RTU UI v1 and RTU UI v2.
- Renamed
BarcodeFormat.Rss14toBarcodeFormat.DatabarandBarcodeFormat.RssExpandedtoBarcodeFormat.DatabarExpanded. - Moved
DetectDocumentAsyncfromScanbotSDK.SDKServicetoScanbotSDK.DataDetectionService, keeping all data detectors(from anImageSource) in a single interface. - iOS:
MinFocusDistanceLockremoved fromBarcodeScannerConfigurationandBatchBarcodeScannerConfiguration.FocusLockEnabledandFocusLockPositionare exposed for iOS and these values give more control for camera focus.
- IMPORTANT - Camera: Changed the default rear cameras on all scanners to the triple or dual camera.
- IMPORTANT - Classic Component: The MAUI Classic UI Components:
- π Under the hood:
- Updated the .NET bindings to .NET SDK 5.1.0 (see our .NET changelog for more under the hood changes).
- Upgraded the native Scanbot Android SDK to v5.1.3 and Scanbot iOS SDK to v5.1.4 versions.
MAUI - Version 4.2.1 (6 May 2024)β
- π New:
- Added
PDFConfigurationclass which allows the user to setPDFSize,PDFOrientation,PDFAttributesfor creating a PDF document. Please checkScanbotSDK.MAUI.SDKService.CreatePdfAsync(...). ThePDFAttributesclass allows the user to set the PDF metadata. - Added a new property
ScanbotOCRand methodTesseract(...)inOcrConfigclass. It simplifies the usage of OCR configuration engines. - Added a new method
ScanbotSDK.MAUI.SDKService.CreateSandwichPdfAsync(...)which creates PDF document along with performing the OCR on it.
- Added
- π Bug fixes:
- iOS: Fixed a bug in
ScanbotSDK.MAUI.SDKService.CreatePdfAsync(...), it always used the OCR engine before. Now, there are 2 different functions for both usecases:- Creating a PDF document, See
ScanbotSDK.MAUI.SDKService.CreatePdfAsync(...) - Creating a PDF including OCR (Sandwich PDF document). See
ScanbotSDK.MAUI.SDKService.CreateSandwichPdfAsync(...)
- Creating a PDF document, See
- iOS: Fixed a bug in
- β οΈ Breaking changes:
- The
OCRModeenum typesMLandLegacyare renamed withScanbotOCRandTesseractrespectively. - Replaced
ScanbotSDK.MAUI.SDKService.CreatePdfAsync(IEnumerable<FileImageSource> files, PDFPageSize pageSize, PDFPageOrientation pdfPageOrientation, OcrConfig configuration)withScanbotSDK.MAUI.SDKService.CreatePdfAsync(IEnumerable<FileImageSource> files, PDFConfiguration configuration).
- The
MAUI - Version 4.2.0 (17 Apr 2024)β
- π New:
- Added new RTU UI components:
- VIN (Vehicle identification number) Scanner
- License Plate Scanner
- Text Data Scanner
- Introduced Document Quality Analyzer. It analyzes the text quality (legibility) on images. See β οΈ Breaking changes for more information.
- Added new supported barcode formats. Check
BarcodeFormatenum for:USPSIntelligentMailRoyalMailJapanPostRoyalTNTPostAustraliaPostGS1CompositeDatabarLimited
- Added support for Kuwait ID cards in the MRZ scanner.
- Added support for Israelian checks to the check recognizer.
- Added new type literals for
PDFPageSize. - Added a new enum
PDFPageOrientationwhich can be used while creating PDF inIScanbotService.CreatePdfAsync(...)method. - Formatted barcode documents are now exposed on barcodes via a new property called
FormattedResult, which contains strongly typed records of the data contained within the barcode. The new record types include:AAMVADocumentBoardingPassDocumentDEMedicalPlanDocumentGs1DocumentIDCardPDF417DocumentMedicalCertificateDocumentSEPADocumentSwissQRDocumentVCardDocument
- MRZ support for td1 long document standard.
- Added
CameraZoomRangeinBarcodeScannerConfigurationandBatchBarcodeScannerConfiguration. - Added
ExtensionFilterinBarcodeScannerConfigurationandBatchBarcodeScannerConfiguration. AddedExtensionproperty inBarcoderesult model to access the extension result.
- Both Android and iOS:
- New PDF renderer for simple PDF and "sandwiched" PDF generation.
- Added support for custom PDF metadata. Check
IO.Scanbot.Pdf.Model.PdfAttributesfor Android andSBSDKPDFMetadataProcessorfor iOS. - Added support for portrait, landscape and auto page orientation. Check
IO.Scanbot.Pdf.Model.PageDirectionin Android andSBSDKPDFRendererPageOrientationfor iOS. - Extended list of supported page sizes (A3, A5, B4, B5, etc.). Check
IO.Scanbot.Pdf.Model.PageSizefor Android andSBSDKPDFRendererPageSizefor iOS.
- Added support for custom PDF metadata. Check
- New PDF renderer for simple PDF and "sandwiched" PDF generation.
- Added new RTU UI components:
- π Improvements:
- Improved the speed of barcode recognition for most barcode symbologies.
- Enhanced control over how to handle GS1 messages in barcodes.
- New overloads for
SBSDKInitializer.Initializeto enable initialization directly from a MAUI application instead of platform specific application objects. - New improved document detector with better performance and less memory consumption.
- Added new Optical Character Recognition engine based on machine learning algorithms. The new OCR engine currently supports all languages with latin letters, there is no need to specify the languages for it. The speed of text recognition has increased twofold. We can still use the legacy recognition by setting
OCRModeenum type asLegacyin theOcrConfigclass. BatchBarcodeScannerConfigurationnow supports theBarcodeFormatsproperty for filtering barcodes.- Improved accuracy and detection speed of
QrCode,Code39, andCode93barcode types. - Improved contour lines detection with ML Based detection.
- Android:
- Stripped down the Android dynamic symbol table in native libraries. As a result, the size of the native shared libraries has decreased.
- Optimized the size of native libraries integrated into the Scanbot SDK.
- Enhanced error handling behavior when deleting SDK pages.
- Improved quality and speed of the Document Contour detector.
- Decreased size of Document Contour detector ML model.
- π 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_25results whenINDUSTRIAL_2_OF_5was enabled andCODE_25was disabled. Now, we do not return theCODE_25result for such decoding options. - Fixed the detection of a few false positive RSS Expanded codes in live mode.
IScanbotSDKService.WriteTiffAsync,IScanbotSDKService.PerformOcrAsyncandIScanbotSDKService.CreatePdfAsyncall receiveIEnumerable<FileImageSource>instead ofIEnumerable<ImageSource>. With the prior implementations, an invalid cast exception was thrown when a set of files wasn't provided because the internals do, in fact, require files. See also β οΈ Breaking changes.- Android:
- Fixed potential memory leak in all RTU-UI screens.
- Fixed some OOM crashes on low to midrange devices.
- Fixed false positives for
CODE_39andCODABARbarcodes. - Fixed colors not being applied to fields in
GenericDocumentRecognizerConfiguration. - Fixed bug with invisible back button on Document Scanner RTU UI screens when no Camera permission was granted.
- Fixed the logic in
AutoSnapProgressEnabledandPolygonAutoSnapProgressEnabledmethods inFinderDocumentScannerConfigurationandDocumentScannerConfiguration. - Corrected mapping of
UserGuidanceStringsinCheckRecognizerConfiguration. - Fixed the
TopBarButtonsColoroption for theMrzScannerConfigurationandHealthInsuranceCardScannerConfiguration. - Fixed
EnableCameraButtonTitleandEnableCameraExplanationTextparameters onBarcodeScannerConfigurationandBatchBarcodeScannerConfiguration.
- iOS:
- Fixed a crash when denying camera permission.
- Fixed a bug with magnetic lines in CroppingScreen RTU UI.
- Fixed a bug where the polygon should be mirrored when using the front camera in
DocumentScannerResult. - Fixed a bug where
AutomaticSelectionEnabledwas not working properly inBarcodeScannerConfiguration. - Fixed a bug where
FlashEnabledwas not working properly inHealthInsuranceCardScannerConfiguration. - Fixed a bug with the iPad 5th generation where captured images were wrong.
- Fixed a bug where the finder text hint was still showing when
ViewFinderEnabledwas disabled inBarcodeScannerConfigurationandBatchBarcodeScannerConfiguration. - Fixed a wrong polygon color in RTU-UI barcode scanner tracking overlay.
- Fixed a bug in
SBSDKOpticalCharacterRecognizerwhereRecognizeTextwas unable to detect text on imageStorage when the encryption was enabled. - Fixed the issue when the top and bottom toolbars' background color in
SBSDKUICroppingViewControllerdidn't update on dark mode change, when set toUIColor.systemBackground.
- β οΈ Breaking changes:
- GS1 codes are now handled differently for various barcode types. Using the default option
GS1Handling.Parsewill give the same result as before for all barcode types, except forBarcodeFormat.RssExpanded. Previously, forRssExpanded, the result was inconsistently returned with parentheses. Now, to get results with parentheses for all barcode types, use the optionGS1Handling.Decode. IScannedPageServicerenamed toIScannedPage.- Major updates in
IScanbotSDKService:- Replaced
EstimateBlurrinesswithDetectDocumentQualityAsync. - Replaced
OcrConfigswithDefaultOcrConfigwhich provides the default OCR configs from the native platforms. - Replaced
public LicenseInfo GetLicenseInfo()withpublic LicenseInfo LicenseInfo { get; }. - Updated return value of
ApplyImageFilterAsyncfromTask<ImageSource>toTask<FileImageSource>. - Replaced
CreatePdfAsync(List<ImageSource> images, PDFPageSize pageSize)withCreatePdfAsync(IEnumerable<FileImageSource> files, PDFPageSize pageSize = PDFPageSize.Custom, PDFPageOrientation pdfPageOrientation = PDFPageOrientation.Auto, OcrConfig configuration = null). - Replaced
PerformOcrAsync(IEnumerable<ImageSource> images, IEnumerable<string> languages, string pdfOutputPath = null)withTask<OcrResult> PerformOcrAsync(IEnumerable<FileImageSource> sources, OcrConfig configuration = null, string pdfOutputPath = null) - Replaced
WriteTiffAsync(IEnumerable<ImageSource> images, TiffOptions options = null)withWriteTiffAsync(IEnumerable<FileImageSource> files, TiffOptions options = null).
- Replaced
- Replaced property
Gs1DecodingEnabledof typeboolwithGs1HandlingModeof typeGS1Handlingenum inBarcodeScannerAdditionalParameters. - The
DocumentSDK.MAUI.iOSandDocumentSDK.MAUI.Droidassemblies merged into one assembly namedDocumentSDK.MAUI. - All types under the
DocumentSDKandBarcodeSDKnamespaces have been moved to theScanbotSDKnamespace. - The
ScanbotSDK.NETpackage is no longer referenced as a dependency. All needed files and dependencies are included directly in the package. - Renamed all the extension methods to
ToNative()andToMaui(). The extension methods which are responsible for converting Maui class objects to Native(iOS/Android) class objects or vice versa. Same with the conversion of Maui enums to Native enums or vice versa.
- GS1 codes are now handled differently for various barcode types. Using the default option
- π Under the hood:
- Upgraded the native Scanbot Android SDK to v4.2.0 and Scanbot iOS SDK to v4.2.2
- Added "libharu" library to dependencies.
- Android:
- Blackview and Caterpillar brands are now excluded from GpuAcceleration-supported devices.
- Removed "Android PDF Writer" library from dependencies.
- Upgraded OpenCV version to 4.8.
- Added "icu4c" library to dependencies.
- Updated version of Nameof C++ library to v0.10.3.
- Disabled GPU acceleration for Redmi 9 models, Samsung Galaxy Grand Prime and devices with Android older than 6.
- iOS:
- Added Privacy manifest file (PrivacyInfo.xcprivacy) to the SDK which complies with the latest Apple specs.
- Added new static property
MaximumRecommendedImageSizetoSBSDKDeviceInformation.
MAUI - Version 2.3.1 (11 Oct 2023)β
- π Bug fixes:
- Fixed a focusing issue with the new iPhone 15 Pro and 15 Pro Max.
MAUI - Version 2.3.0 (15 Sep 2023)β
- π New:
- More supported barcode types:
- Micro QR Code
- An additional Ready-To-Use UI Component in the form of Finder Document Scanner.
- Support for configuring a confirmation dialog for the Barcode Scanner Ready-To-Use UI Component.
- More supported barcode types:
- π Improvements:
- Improved accuracy and detection speed of QR_CODE, Code39, and Code93 barcode types.
- Added support for inverted PDF-417 barcodes.
- π Bug fixes:
- Fixed
NullReferenceExceptionwhen using theFinderWidthRelativeToDeviceWidthorFinderHeightRelativeToDeviceWidthproperties inDocumentSDK.MAUI.MrzScannerConfiguration. DocumentSDK.MAUI.ScanbotSDK.LicenseInfonow returns the correct license status.
- Fixed
- β οΈ Breaking changes:
- For the
DocumentSDK.MAUI.Constants.MedicalCertificateCheckboxTypeenum, changedRequiresCareYestoCareYes. - Renamed the
BarcodeSDK.MAUI.Constants.OverlayFormatenum toBarcodeSDK.MAUI.Constants.BarcodeTextFormat.- Any types which use the enum have also been updated, such as
BarcodeSDK.MAUI.Configurations.SelectionOverlayConfiguration.
- Any types which use the enum have also been updated, such as
- If using named parameters for
BarcodeSDK.MAUI.Configurations.SelectionOverlayConfiguration, the misspelledautomaticSelectionEnaledparameter has been renamed toautomaticSelectionEnabled.
- For the
- π Under the hood:
- The native Scanbot Android SDK upgraded to v2.3.0.
- The native Scanbot iOS SDK upgraded to v2.3.1.
MAUI - Version 2.2.0 (26 Jun 2023)β
- π First release of the
ScanbotSDK.MAUINuGet package for MAUI. - Provides Ready-To-Use UI Components - a set of easy to integrate and customize high-level MAUI components for the most common tasks in Scanbot SDK:
- Document Scanner
- Cropping UI & ImageFilters
- Barcode & QR code Scanner
- MRZ Scanner
- Generic Document Recognizer
- EHIC Scanner
- Check Recognizer
- Provides additional SDK features based on image picked from the device photos application:
- Detect Barcodes on Image
- Detect Document on Image
- New unified Scanbot SDK API:
- Idiomatic asynchronous design
- MAUI-based unified API for Android & iOS
- Example App demonstrating the new functionality: scanbot-sdk-maui-example
Scanbot SDK is part of the Apryse SDK product family
A mobile scan is just the start. With Apryse SDKs, you can expand mobile workflows into full crossβplatform document processing. Whether you need to edit PDFs, add secure digital signatures, or use a fast, customizable document viewer and editor, Apryse gives you the tools to build powerful features quickly.
Learn more
