dynamsoft barcode reader logoRelease Notes

Windows Edition
  • Windows Edition
  • Linux Edition
  • Mobile Edition
  • JavaScript Edition
  • Mac Edition
How to Upgrade?

7.6 (09/01/2020)

New

  • [Java SDK] Added Mac library into the JAR file to support macOS platform. The Java SDK now supports Windows, Linux and macOS.
  • Added a new member rpmColourArgumentIndex in the struct IntermediateResult. The rpmColourArgumentIndex is the index of ForeAndBackgroundColour argument used for RegionPredetectionMode.

IMPROVED

  • Improved the decoding speed for when ScanDirectly mode is enabled for localization.
  • Improved the decoding speed by utilizing SIMD (single instruction, multiple data).
  • Improved the deblurring algorithm for linear barcodes.

FIXED

  • Fixed a bug where the coordinates of barcodes are calculated incorrectly under some situations.
  • Fixed a crash issue which occurs under some situations.

7.5 (07/22/2020)

New

  • Added support for QR Code Model 1 (an older version of the QR Code specification). It can be enabled by setting FormatSpecification.EnableQRCodeModel1 in the JSON template file.
  • Added a new localization mode LM_CENTRE to localize barcodes from the centre, which can improve the localization speed if the barcode is in the centre of the image. It can be enabled by setting the struct PublicRuntimeSettings -> LocalizationModes -> LM_CENTRE.
  • Added a new binarization mode BM_THRESHOLD to set the BinarizationThreshold value which is used to convert the grayscale image to binary image.
  • Added startPatternRange, middlePatternRange and endPatternRange properties to the struct OneDCodeDetails for UPC_A, UPC_E, EAN_8 and EAN_13 codes.
  • Added the following new arguments for RegionPredetectionMode.RPM_GENERAL_RGB_CONTRAST and RegionPredetectionMode.RPM_GENERAL_GRAY_CONTRAST:
    • RelativeBarcodeRegions: Sets the barcode regions relative to the pre-detected region.
    • ForeAndBackgroundColours: Specifies a set (or multiple sets) of the foreground and background colours used for region pre-detection algorithm.
    • AspectRatioRange: Sets the height range of the bounding rectangle of the pre-detected region.
    • HeightRange: Sets the width range of the bounding rectangle of the pre-detected region.
    • WidthRange: Sets the aspect ratio range of the bounding rectangle of the pre-detected region.

IMPROVED

  • Optimized the binarization process for 1D barcode zones.
  • Improved the decoding accuracy for 1D barcodes.
  • Improved the decoding speed by 5%-20%.
  • Improved the decoding accuracy for Data Matrix code with broken finder pattern.

FIXED

  • Fixed a bug where the coordinates of barcodes are calculated incorrectly under some situations.

7.4 (04/16/2020)

New

  • Added new barcode format support for DotCode.
  • Added relative ROI (Region of Interest) detection to optimize the localization results in the high colour contrasted scenarios.
  • Added a new type of output IRT_PREDETECTED_QUADRILATERAL, to identify regions with user-define HSV colour space.
  • Implemented a feature for recognizing distorted DataMatrix barcodes. It can be enabled by turning on the struct PublicRuntimeSettings -> furtherMode -> DeformationResistingModes.
  • Added an optimized decoding method for linear barcodes in vector PDF files. The vector PDF file can be decoded without rasterizing, increase decoding efficiency.
  • Added two Enumerations for FrameDecodingParameters: ClarityCalculationMethod and ClarityFilterMode, to improve input image quality.
  • Added a new image pre-processing mode IPM_MORPHOLOGY for barcodes with wide data bar or data cell gaps.

IMPROVED

  • Enhanced QR Code deformation, resistance, to improve the success rate of decoding the QR code with square symbol at the center.
  • Optimized the algorithm for decoding large and dense QR and DataMatrix codes.
  • Optimized deblurring algorithm for linear barcodes.
  • Combined Windows and Linux Java libraries into one JAR file to support both platforms. The JAR file is also available on Dynamsoft server for developers to add dependencies easily via Maven repositories.
  • Improved a character display issue on some platforms where BarcodeText returns an extra "\uFEFF" if the barcode is encoded in UTF-8 with BOM (Byte Order Mark).
  • Simplified the process to enable DPM, DotCode and Postal Codes. Now the library will automatically turn on the corresponding localization mode while following settings are applied:
    • DPMCRM_GENEARL
    • BF2_DOTCODE
    • BF2_POSTALCODE

FIXED

  • Fixed a bug where the BinarizationModes settings do not work in the DPM mode.
  • Fixed a bug where the barcode location returns incorrect when the barcode is close to the border of the scanning region.
  • Fixed a bug in the calculation of deblur confidence.
  • Fixed a bug where the ColourConversionModes RGB weights setting does not work when CICM_GENERAL is enabled.
  • Other small fixes and tweaks.

7.3 (01/02/2020)

New

  • Added a new barcode type Postal codes including USPS Intelligent Mail, Postnet, Planet, Australia Post barcode, RM4SCC.
  • Added a new localization mode LM_STATISTICS_POSTAL_CODE in the struct PublicRuntimeSettings -> LocalizationModes to recognize Postal codes.
  • Added the capability to obtain accompanying texts at the top or bottom of a linear barcode. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> AccompanyingTextRecognitionModes.
  • Implemented the feature of recognizing distorted QR barcode. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> DeformationResistingModes.
  • Implemented the feature of complementing missing parts of QR Code & DataMatrix barcodes. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> BarcodeComplementModes.
  • Added a new setting AutoFilter to set whether to filter frames automatically in the struct FrameDecodingParameters.
  • Added a new setting ScaleUpModes to set the scale-up mode for linear barcodes with small module size. It can be enabled by turning on the struct PublicRuntimeSettings -> ScaleUpModes.

IMPROVED

  • Improved the decoding accuracy for DataMatrix that has a narrow quiet zone.
  • Improved the decoding accuracy for 1D barcode that has a small module size.

7.2.2 (11/13/2019)

FIXED

  • Fixed a bug where BarcodeBytes was null when DPM mode was enabled.
  • For .NET, fixed a bug where the use of barcodeText and barcodeBytes was reversed, resulting in an incorrect value.

7.2.1 (11/12/2019)

New

  • Added support for GS1-128 barcode.
  • Added a new argument "RecordsetSizeOfLatestImages" for "IntermediateResultSavingMode" to specify how many sets of intermediate results are kept in the library.

IMPROVED

  • Improved the decoding capability of PDF417 by identifying the start and stop patterns of PDF417.
  • Improved the deblurring performance for wide 1D barcodes, which lowers the possibility of fake results.
  • Improved video decoding by optimizing frame filtering.
  • Optimized the automatic classification for Code 39 and Code 39 Extended.
  • Optimized the implementation of region pre-detection mode "RPM_GENERAL_GRAY_CONTRAST".
  • Enhanced the recognition of barcodes with small module sizes.
  • Changed ExtendedBarcodeFormatIds to BarcodeFormat_2 to support more barcode formats in the future.
  • Improved the setting template inside every sample. For consistency, now every sample uses one of templates of "Best Coverage", "Balance" and "Best Speed".

FIXED

  • Fixed a bug in the barcode zone type identification during general statistical localization.
  • Fixed minor bugs in result outputs.
  • Fixed a bug where OneDCodeDetails doesn't work.

7.2 (09/24/2019)

New

  • Added more barcode formats:
    • 1. GS1 Databar (Omnidirectional, Truncated,
      Stacked, Stacked Omnidirectional, Limited,
      Expanded, Expanded Stacked)
    • 2. PatchCode
    • 3. Maxicode (mode 2-5)
    • 4. Micro PDF417
    • 5. Micro QR
    • 6. GS1 COMPOSITE (combination of OneD
      and PDF417/Micro PDF 417)
    • 7. Non-standard Barcode
  • Added the capability of reading DPM code. It can be enabled by turning on the struct PublicRuntimeSettings->furtherMode-> DPMCodeReadingModes and adding LM_STATISTICS_MARKS to the PublicRuntimeSettings->localizationModes.
  • Licensing is required to obtain the intermediate results, except the original image in the intermediate results.
  • Added a parameter, clarity in the struct ExtendedResult, to show the clarity of the decoded-barcode zone.
  • For .NET, added a method, GetModeArgument(), to get the value of the argument for the mode parameters.
  • For C/C++, added a method, DBR_GetModeArgument()/GetModeArgument(), to get the argument value of the mode parameters.
  • For Java, added a method, getModeArgument(), to get the argument value of the mode parameters.

IMPROVED

  • Improved the decoding speed for PDF417.
  • Improved the capability of decoding QR and Data Matrix with cylinder-like deformation.

FIXED

  • Fixed minor bugs

7.1 (08/15/2019)

New

  • Added automatic blurry frame filtering for the video frame decoding, reducing incorrect barcode recognition.
  • Added three arguments for the CICM_GENERAL of ColourConversionModes to set the weights for the color conversion, providing more flexibility to deal with various kinds of backgrounds by using different weights of three colors: red, green and blue.
  • For C/C++ - Added a new struct FrameDecodingParameters, added methods DBR_InitFrameDecodingParameters()/InitFrameDecodingParameters(), and DBR_StartFrameDecodingEx()/StartFrameDecodingEx() to start a new thread to decode barcodes.
  • For .NET - Added a new struct FrameDecodingParameters, added methods InitFrameDecodingParameters(), and StartFrameDecodingEx() to start a new thread to decode barcodes.

IMPROVED

  • The output of intermediate results can be saved either directly to a folder or to memory or both, by introducing a new parameter, intermediateResultSavingMode, to the struct PublicRuntimeSettings.

FIXED

  • Updated PDF component to v10.3.2.0806
  • Fixed a bug that the deblur function might malfunction in some rare cases.
  • Fixed a bug that the coordinates of barcodes may be calculated incorrectly under some situations.
  • Fixed a bug that the parameter, RequireStartStopChars, might malfunction in some rare cases.
  • Fixed a bug that the angle of barcodes might not be calculated correctly sometimes.
  • Fixed a bug that GetIntermediateResults would throw exception “Value cannot be null.\r\nParameter name: destination”(for .NET version)
  • Fixed a misspelling on Dynamsoft.Barcode.EnumBinarizationMode.BM_LOCAL_BLCOK(for .NET version)

7.0 (07/11/2019)

New

  • Refactored most modules to provide a flexible barcode reading framework that allows for parameter customization suited for a variety of barcode scenarios.
  • Enabled access to intermediate results (grayscale image, binarized image, text zone, etc) during the decoding process.
  • Added new interfaces to support video decoding, and frame decoding to improve interactive sensitivity.
  • Provided methods to terminate the decoding process at different phases such as during binarization, localization or barcode type identification.
  • Added a new barcode localization method, Scan Directly, to reduce decoding time significantly for high-quality images.

IMPROVED

  • Enhanced error messages related to the license initiation failure.
  • Improved detailed results for decoded barcodes, including more barcode format specification.
  • Improved results output to enable outputting barcode results in the order of confidence level, barcode position or format.

FIXED

  • Fixed an issue where the barcode could be calculated incorrectly in some occasions.

6.5.3 (07/03/2019)

FIXED

  • Updated the license verification process for development license and desktop runtime license. The old license verification process may lead to license error on some computers.
  • Small fixes and tweaks.

6.5.2 (05/28/2019)

IMPROVED

  • Optimized barcode reading workflow for QRCode/DataMatrix/Aztec code recognition. A QRCode/DataMatrix/Aztec barcode zone will be submitted to the deblurring process when its decoding results vary with different binarization arguments.
  • Reduced the error rate of 1D barcode recognition. Giving more chances for confirmation of a 1D barcode decoding result whose confidence isn’t extreme high.
  • Reduced the possibility of conflicts with neighbour barcodes. This improved the precision of the zone to be deleted when a barcode is recognized successfully.

FIXED

  • [.NET only] Added a new Dispose method to help release resources in time in the BarcodeReader Class.
  • Enhanced the robustness of the image processing algorithm. This resolved segmentation faults when a 0-size image is passed to our SDK or there are a few small-size barcode zones which need to do spatial transformation.

6.5.1 (04/16/2019)

IMPROVED

  • Improved deblur algorithm for OneD, enhancing the recognition rate for blurry/out-of-focus barcodes.
  • Improved the accuracy of border location and symbol segmentation for AZTEC.
  • Optimized line scanning algorithm for OneD, decreasing the computation load for character recognition.
  • DecodeBuffer now supports 48-bit and 64-bit image data.

FIXED

  • Small fixes and tweaks.

6.5 (02/26/2019)

IMPROVED

  • Improved average reading speed by 5-10%.
  • Greatly improved the image-processing performance for blurry PDF417 codes.
  • Improved decoding performance for blurry 1D, QRCode and DataMatrix codes.
  • Decreased error recognition rate for Aztec codes.

FIXED

  • Small fixes and tweaks.

6.4.1 (11/22/2018)

IMPROVED

  • Improved the decoding performance for Aztec, increasing the recognition rate.
  • Improved the decoding performance for OneD, decreasing the error recognition rate.
  • Added further check points for Timeouts, enhancing the timeout control on large scale images for decoding.

FIXED

  • Small fixes and tweaks.

6.4 (10/15/2018)

New

  • Added a BatchDecode tool which helps developers evaluate the recognition performance and speed of the Dynamsoft Barcode Reader SDK.
  • Added a new sample demonstrates how to use Dynamsoft Barcode Reader in multiple threads.

IMPROVED

  • Improved barcode reading speed by 10%, especially for small-sized images.
  • Reorganized API documentation to help you find content more easily.
  • Simplified Developer's Guide to guide you through creating a HelloWorld project more quickly.

FIXED

  • Small fixes and tweaks.

6.3 (08/16/2018)

New

  • Added the support for Aztec codes.
  • New developer's guide (.pdf) to cover common use cases,and re-worked existing PDF content to improve its usability.
  • New API documentation (.chm) to help you find content more easily.
  • Added GetRuntimeSettings and UpdateRuntimeSettings to help you adjust runtime barcode reading settings.
  • Added ResetRuntimeSettings to reset runtime barcode reading settings to default values.
  • Added InitRuntimeSettingsWithString and InitRuntimeSettingsWithFile to initialize barcode reading settings at runtime.
  • Added OutputSettingsToString and OutputSettingsToFile to review runtime barcode reading settings.
  • Added AppendTplStringToRuntimeSettings and AppendTplFileToRuntimeSettings to append a new template string/file to the current runtime settings.

IMPROVED

  • Improved the logic for ExpectedBarcodesCount. Previously the barcodes it returned may be greater than the given value of ExpectedBarcodesCount. Now as long as the expected barcodes found, it will stop continue searching and decoding barcodes.

FIXED

  • Small fixes and tweaks.

6.2 (06/28/2018)

IMPROVED

  • Decreased misreading rate for 1D barcodes.
  • Enhanced performance for reading multiple barcodes from an image.
  • Greatly improved recognition rate for QR Code and DataMatrix on complicated backgrounds.
  • Greatly improved recognition rate for barcodes on grid background.
  • Optimized localization for PDF417 without enough quiet zone.

New Resources

  • New console samples – Decode Single Barcode, Decode Multi-Barcodes, Read Barcode from Region, Trigger Event after Decoding - are now available in the installer.

FIXED

  • Small fixes and tweaks.

6.1 (05/14/2018)

NEW

  • Added GetTemplateSettings and SetTemplateSettings methods which allow you to review and adjust barcode reading settings at runtime.

IMPROVED

  • Improved localization algorithm for barcodes rotated in a degree or with poor perspective.
  • Faster read speed for QR, Data Matrix and PDF417 barcodes.

6.0 (03/30/2018)

NEW

  • Easy and flexible to create a custom barcode reading template for your specific use case.

IMPROVED

  • Improved average reading speed by 50% in a four-core CPU environment.
  • Improved the reading accuracy and speed for blurred QRCode and DataMatrix.
  • Improved the speed for reading barcodes directly from a computer/phone screen.
  • Improved reading speed for small barcodes in high-resolution images.

FIXED

  • Small fixes and tweaks.

Previous Changes

7.6 (09/01/2020)

New

  • [Java SDK] Added Mac library into the JAR file to support macOS platform. The Java SDK now supports Windows, Linux and macOS.
  • Added a new member rpmColourArgumentIndex in the struct IntermediateResult. The rpmColourArgumentIndex is the index of ForeAndBackgroundColour argument used for RegionPredetectionMode.

IMPROVED

  • Improved the decoding speed for when ScanDirectly mode is enabled for localization.
  • Improved the decoding speed by utilizing SIMD (single instruction, multiple data).
  • Improved the deblurring algorithm for linear barcodes.

FIXED

  • Fixed a bug where the coordinates of barcodes are calculated incorrectly under some situations.
  • Fixed a crash issue which occurs under some situations.

7.5 (07/22/2020)

New

  • Added support for QR Code Model 1 (an older version of the QR Code specification). It can be enabled by setting FormatSpecification.EnableQRCodeModel1 in the JSON template file.
  • Added a new localization mode LM_CENTRE to localize barcodes from the centre, which can improve the localization speed if the barcode is in the centre of the image. It can be enabled by setting the struct PublicRuntimeSettings -> LocalizationModes -> LM_CENTRE.
  • Added a new binarization mode BM_THRESHOLD to set the BinarizationThreshold value which is used to convert the grayscale image to binary image.
  • Added startPatternRange, middlePatternRange and endPatternRange properties to the struct OneDCodeDetails for UPC_A, UPC_E, EAN_8 and EAN_13 codes.
  • Added the following new arguments for RegionPredetectionMode.RPM_GENERAL_RGB_CONTRAST and RegionPredetectionMode.RPM_GENERAL_GRAY_CONTRAST:
    • RelativeBarcodeRegions: Sets the barcode regions relative to the pre-detected region.
    • ForeAndBackgroundColours: Specifies a set (or multiple sets) of the foreground and background colours used for region pre-detection algorithm.
    • AspectRatioRange: Sets the height range of the bounding rectangle of the pre-detected region.
    • HeightRange: Sets the width range of the bounding rectangle of the pre-detected region.
    • WidthRange: Sets the aspect ratio range of the bounding rectangle of the pre-detected region.

IMPROVED

  • Optimized the binarization process for 1D barcode zones.
  • Improved the decoding accuracy for 1D barcodes.
  • Improved the decoding speed by 5%-20%.
  • Improved the decoding accuracy for Data Matrix code with broken finder pattern.

FIXED

  • Fixed a bug where the coordinates of barcodes are calculated incorrectly under some situations.

7.4.1 (05/29/2020)

Fixed

  • Fixed a bug where the application crashes when invoking InitLicenseFromLicenseContent() method.

7.4 (04/16/2020)

New

  • Added new barcode format support for DotCode.
  • Added relative ROI (Region of Interest) detection to optimize the localization results in the high colour contrasted scenarios.
  • Added a new type of output IRT_PREDETECTED_QUADRILATERAL, to identify regions with user-define HSV colour space.
  • Implemented a feature for recognizing distorted DataMatrix barcodes. It can be enabled by turning on the struct PublicRuntimeSettings -> furtherMode -> DeformationResistingModes.
  • Added an optimized decoding method for linear barcodes in vector PDF files. The vector PDF file can be decoded without rasterizing, increase decoding efficiency.
  • Added two Enumerations for FrameDecodingParameters: ClarityCalculationMethod and ClarityFilterMode, to improve input image quality.
  • Added a new image pre-processing mode IPM_MORPHOLOGY for barcodes with wide data bar or data cell gaps.

IMPROVED

  • Enhanced QR Code deformation, resistance, to improve the success rate of decoding the QR code with square symbol at the center.
  • Optimized the algorithm for decoding large and dense QR and DataMatrix codes.
  • Optimized deblurring algorithm for linear barcodes.
  • Combined Windows and Linux Java libraries into one JAR file to support both platforms. The JAR file is also available on Dynamsoft server for developers to add dependencies easily via Maven repositories.
  • Improved a character display issue on some platforms where BarcodeText returns an extra "\uFEFF" if the barcode is encoded in UTF-8 with BOM (Byte Order Mark).
  • Simplified the process to enable DPM, DotCode and Postal Codes. Now the library will automatically turn on the corresponding localization mode while following settings are applied:
    • DPMCRM_GENEARL
    • BF2_DOTCODE
    • BF2_POSTALCODE

FIXED

  • Fixed a bug where the BinarizationModes settings do not work in the DPM mode.
  • Fixed a bug where the barcode location returns incorrect when the barcode is close to the border of the scanning region.
  • Fixed a bug in the calculation of deblur confidence.
  • Fixed a bug where the ColourConversionModes RGB weights setting does not work when CICM_GENERAL is enabled.
  • Other small fixes and tweaks.

7.3 (01/02/2020)

New

  • Added a new barcode type Postal codes including USPS Intelligent Mail, Postnet, Planet, Australia Post barcode, RM4SCC.
  • Added a new localization mode LM_STATISTICS_POSTAL_CODE in the struct PublicRuntimeSettings -> LocalizationModes to recognize Postal codes.
  • Added the capability to obtain accompanying texts at the top or bottom of a linear barcode. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> AccompanyingTextRecognitionModes.
  • Implemented the feature of recognizing distorted QR barcode. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> DeformationResistingModes.
  • Implemented the feature of complementing missing parts of QR Code & DataMatrix barcodes. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> BarcodeComplementModes.
  • Added a new setting AutoFilter to set whether to filter frames automatically in the struct FrameDecodingParameters.
  • Added a new setting ScaleUpModes to set the scale-up mode for linear barcodes with small module size. It can be enabled by turning on the struct PublicRuntimeSettings -> ScaleUpModes.

IMPROVED

  • Improved the decoding accuracy for DataMatrix that has a narrow quiet zone.
  • Improved the decoding accuracy for 1D barcode that has a small module size.

7.2.2 (11/13/2019)

FIXED

  • Fixed a bug where BarcodeBytes was null when DPM mode was enabled.

7.2.1 (11/12/2019)

New

  • Added support for GS1-128 barcode.
  • Added a new argument "RecordsetSizeOfLatestImages" for "IntermediateResultSavingMode" to specify how many sets of intermediate results are kept in the library.

IMPROVED

  • Improved the decoding capability of PDF417 by identifying the start and stop patterns of PDF417.
  • Improved the deblurring performance for wide 1D barcodes, which lowers the possibility of fake results.
  • Improved video decoding by optimizing frame filtering.
  • Optimized the automatic classification for Code 39 and Code 39 Extended.
  • Optimized the implementation of region pre-detection mode "RPM_GENERAL_GRAY_CONTRAST".
  • Enhanced the recognition of barcodes with small module sizes.
  • Changed ExtendedBarcodeFormatIds to BarcodeFormat_2 to support more barcode formats in the future.
  • Improved the setting template inside every sample. For consistency, now every sample uses one of templates of "Best Coverage", "Balance" and "Best Speed".

FIXED

  • Fixed a bug in the barcode zone type identification during general statistical localization.
  • Fixed minor bugs in result outputs.
  • Fixed a bug where OneDCodeDetails doesn't work.

7.2 (09/24/2019)

New

  • Added more barcode formats:
    • 1. GS1 Databar (Omnidirectional, Truncated,
      Stacked, Stacked Omnidirectional, Limited,
      Expanded, Expanded Stacked)
    • 2. PatchCode
    • 3. Maxicode (mode 2-5)
    • 4. Micro PDF417
    • 5. Micro QR
    • 6. GS1 COMPOSITE (combination of OneD
      and PDF417/Micro PDF 417)
    • 7. Non-standard Barcode
  • Added the capability of reading DPM code. It can be enabled by turning on the struct PublicRuntimeSettings->furtherMode-> DPMCodeReadingModes and adding LM_STATISTICS_MARKS to the PublicRuntimeSettings->localizationModes.
  • Licensing is required to obtain the intermediate results, except the original image in the intermediate results.
  • Added a parameter, clarity in the struct ExtendedResult, to show the clarity of the decoded-barcode zone.
  • For C/C++, added a method, DBR_GetModeArgument()/GetModeArgument(), to get the argument value of the mode parameters.
  • For Java, added a method, getModeArgument(), to get the argument value of the mode parameters.

IMPROVED

  • Improved the decoding speed for PDF417.
  • Improved the capability of decoding QR and Data Matrix with cylinder-like deformation.

FIXED

  • Fixed minor bugs

7.1 (08/15/2019)

New

  • Added automatic blurry frame filtering for the video frame decoding, reducing incorrect barcode recognition.
  • Added three arguments for the CICM_GENERAL of ColourConversionModes to set the weights for the colour conversion, providing more flexibility to deal with various kinds of backgrounds by using different weights of three colors: red, green and blue.
  • For C/C++, added two methods, DBR_StartFrameDecodingEx()/StartFrameDecodingEx(), which can be used to start a new thread to decode barcodes, and DBR_InitFrameDecodingParameters()/InitFrameDecodingParameters(), and a new struct,FrameDecodingParameters.

IMPROVED

  • The output of intermediate results can be saved either directly to a folder or to memory or both, by introducing a new parameter, intermediateResultSavingMode, to the struct PublicRuntimeSettings.

FIXED

  • Updated PDF component to v10.3.2.0806
  • Fixed a bug that the deblur function might malfunction in some rare cases.
  • Fixed a bug that the coordinates of barcodes may be calculated incorrectly under some situations.
  • Fixed a bug that the parameter, RequireStartStopChars, might malfunction in some rare cases.
  • Fixed a bug that the angle of barcodes might not be calculated correctly sometimes.

7.0 (07/11/2019)

New

  • Refactored most modules to provide a flexible barcode reading framework that allows for parameter customization suited for a variety of barcode scenarios.
  • Enabled access to intermediate results (grayscale image, binarized image, text zone, etc) during the decoding process.
  • Added new interfaces to support video decoding, and frame decoding to improve interactive sensitivity.
  • Provided methods to terminate the decoding process at different phases such as during binarization, localization or barcode type identification.
  • Added a new barcode localization method, Scan Directly, to reduce decoding time significantly for high-quality images.

IMPROVED

  • Enhanced error messages related to the license initiation failure.
  • Improved detailed results for decoded barcodes, including more barcode format specification.
  • Improved results output to enable outputting barcode results in the order of confidence level, barcode position or format.

FIXED

  • Fixed an issue where the barcode could be calculated incorrectly in some occasions.

6.5.3 (07/03/2019)

FIXED

  • Updated the license verification process for development license and desktop runtime license. The old license verification process may lead to license error on some computers.
  • Small fixes and tweaks.

6.5.2 (05/28/2019)

Improved

  • Optimized barcode reading workflow for QRCode/DataMatrix/Aztec code recognition. A QRCode/DataMatrix/Aztec barcode zone will be submitted to the deblurring process when its decoding results vary with different binarization arguments.
  • Reduced the error rate of 1D barcode recognition. Giving more chances for confirmation of a 1D barcode decoding result whose confidence isn’t extreme high.
  • Reduced the possibility of conflicts with neighbour barcodes. This improved the precision of the zone to be deleted when a barcode is recognized successfully.

FIXED

  • Added a new distribution of the SDK, which does not include libstdc++, into the installation package.
  • Enhanced the robustness of the image processing algorithm. This resolved segmentation faults when a 0-size image is passed to our SDK or there are a few small-size barcode zones which need to do spatial transformation.

6.5.1 (04/16/2019)

Improved

  • Improved deblur algorithm for OneD, enhancing the recognition rate for blurry/out-of-focus barcodes.
  • Improved the accuracy of border location and symbol segmentation for AZTEC.
  • Optimized line scanning algorithm for OneD, decreasing the computation load for character recognition.
  • DecodeBuffer now supports 48-bit and 64-bit image data.

FIXED

  • Small fixes and tweaks.

6.5 (02/26/2019)

Improved

  • Improved average reading speed by 5-10%.
  • Greatly improved the image-processing performance for blurry PDF417 codes.
  • Improved decoding performance for blurry 1D, QRCode and DataMatrix codes.
  • Decreased error recognition rate for Aztec codes.

FIXED

  • Small fixes and tweaks.

6.4.1 (11/22/2018)

Improved

  • Improved the decoding performance for Aztec, increasing the recognition rate.
  • Improved the decoding performance for OneD, decreasing the error recognition rate.
  • Added further check points for Timeouts, enhancing the timeout control on large scale images for decoding.
  • The .so file no longer depends on the libgcc and libstdc++.

FIXED

  • Small fixes and tweaks.

6.4 (10/15/2018)

NEW

  • Added a BatchDecode tool which helps developers evaluate the recognition performance and speed of the Dynamsoft Barcode Reader SDK.
  • Added a new sample demonstrates how to use Dynamsoft Barcode Reader in multiple threads.

Improved

  • Improved barcode reading speed by 10%, especially for small-sized images.
  • Reorganized API documentation to help you find content more easily.
  • Simplified Developer’s Guide to guide you through creating a HelloWorld project more quickly.

FIXED

  • Small fixes and tweaks.

6.3 (08/16/2018)

New

  • Added the support for Aztec codes.
  • New developer's guide (.pdf) to cover common use cases,and re-worked existing PDF content to improve its usability.
  • New API documentation (.chm) to help you find content more easily.
  • Added GetRuntimeSettings and UpdateRuntimeSettings to help you adjust runtime barcode reading settings.
  • Added ResetRuntimeSettings to reset runtime barcode reading settings to default values.
  • Added InitRuntimeSettingsWithString and InitRuntimeSettingsWithFile to initialize barcode reading settings at runtime.
  • Added OutputSettingsToString and OutputSettingsToFile to review runtime barcode reading settings.
  • Added AppendTplStringToRuntimeSettings and AppendTplFileToRuntimeSettings to append a new template string/file to the current runtime settings.

IMPROVED

  • Improved the logic for ExpectedBarcodesCount. Previously the barcodes it returned may be greater than the given value of ExpectedBarcodesCount. Now as long as the expected barcodes found, it will stop continue searching and decoding barcodes.

FIXED

  • Small fixes and tweaks.

6.2 (06/28/2018)

IMPROVED

  • Easy and flexible to create a custom barcode reading template for your specific use case.
  • Greatly improved barcode reading speed.
  • Decreased misreading rate for 1D barcodes.
  • Enhanced performance for reading multiple barcodes from an image.
  • Optimized reading accuracy and speed for blurred QRCode and DataMatrix.
  • Improved the speed for reading barcodes directly from a computer/phone screen.

Fixed

  • Small fixes and tweaks.

Previous Changes

7.6 (09/01/2020)

New

  • Added a new member rpmColourArgumentIndex in the struct IntermediateResult. The rpmColourArgumentIndex is the index of ForeAndBackgroundColour argument used for RegionPredetectionMode.

IMPROVED

  • Improved the decoding speed for when ScanDirectly mode is enabled for localization.
  • Improved the decoding speed by utilizing SIMD (single instruction, multiple data).
  • Improved the deblurring algorithm for linear barcodes.

FIXED

  • Fixed a bug where the coordinates of barcodes are calculated incorrectly under some situations.
  • Fixed a crash issue which occurs under some situations.

7.5 (07/22/2020)

New

  • Added support for QR Code Model 1 (an older version of the QR Code specification). It can be enabled by setting FormatSpecification.EnableQRCodeModel1 in the JSON template file.
  • Added a new localization mode LM_CENTRE to localize barcodes from the centre, which can improve the localization speed if the barcode is in the centre of the image. It can be enabled by setting the struct PublicRuntimeSettings -> LocalizationModes -> LM_CENTRE.
  • Added a new binarization mode BM_THRESHOLD to set the BinarizationThreshold value which is used to convert the grayscale image to binary image.
  • Added startPatternRange, middlePatternRange and endPatternRange properties to the struct OneDCodeDetails for UPC_A, UPC_E, EAN_8 and EAN_13 codes.
  • Added the following new arguments for RegionPredetectionMode.RPM_GENERAL_RGB_CONTRAST and RegionPredetectionMode.RPM_GENERAL_GRAY_CONTRAST:
    • RelativeBarcodeRegions: Sets the barcode regions relative to the pre-detected region.
    • ForeAndBackgroundColours: Specifies a set (or multiple sets) of the foreground and background colours used for region pre-detection algorithm.
    • AspectRatioRange: Sets the height range of the bounding rectangle of the pre-detected region.
    • HeightRange: Sets the width range of the bounding rectangle of the pre-detected region.
    • WidthRange: Sets the aspect ratio range of the bounding rectangle of the pre-detected region.

IMPROVED

  • Optimized the binarization process for 1D barcode zones.
  • Improved the decoding accuracy for 1D barcodes.
  • Improved the decoding speed by 5%-20%.
  • Improved the decoding accuracy for Data Matrix code with broken finder pattern.

FIXED

  • Fixed a bug where the coordinates of barcodes are calculated incorrectly under some situations.

7.4.1 (05/18/2020)

FIXED

  • [iOS] Fixed a bug where initWithLicenseFromServer doesn't work and will return error -10042 (EnumErrorCode_License_Dll_Missing).

7.4 (04/16/2020)

New

  • Added new barcode format support for DotCode.
  • Added relative ROI (Region of Interest) detection to optimize the localization results in the high colour contrasted scenarios.
  • Added a new type of output IRT_PREDETECTED_QUADRILATERAL, to identify regions with user-define HSV colour space.
  • Implemented a feature for recognizing distorted DataMatrix barcodes. It can be enabled by turning on the struct PublicRuntimeSettings -> furtherMode -> DeformationResistingModes.
  • Added two Enumerations for FrameDecodingParameters: ClarityCalculationMethod and ClarityFilterMode, to improve input image quality.
  • Added a new image pre-processing mode IPM_MORPHOLOGY for barcodes with wide data bar or data cell gaps.

IMPROVED

  • Enhanced QR Code deformation, resistance, to improve the success rate of decoding the QR code with square symbol at the center.
  • Optimized the algorithm for decoding large and dense QR and DataMatrix codes.
  • Optimized deblurring algorithm for linear barcodes.
  • Improved a character display issue on some platforms where BarcodeText returns an extra "\uFEFF" if the barcode is encoded in UTF-8 with BOM (Byte Order Mark).
  • Simplified the process to enable DPM, DotCode and Postal Codes. Now the library will automatically turn on the corresponding localization mode while following settings are applied:
    • DPMCRM_GENEARL
    • BF2_DOTCODE
    • BF2_POSTALCODE

FIXED

  • Fixed a bug where the BinarizationModes settings do not work in the DPM mode.
  • Fixed a bug where the barcode location returns incorrect when the barcode is close to the border of the scanning region.
  • Fixed a bug in the calculation of deblur confidence.
  • Fixed a bug where the ColourConversionModes RGB weights setting does not work when CICM_GENERAL is enabled.
  • Other small fixes and tweaks.

7.3 (01/02/2020)

New

  • Added a new barcode type Postal codes including USPS Intelligent Mail, Postnet, Planet, Australia Post barcode, RM4SCC.
  • Added a new localization mode LM_STATISTICS_POSTAL_CODE in the struct PublicRuntimeSettings -> LocalizationModes to recognize Postal codes.
  • Implemented the feature of recognizing distorted QR barcode. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> DeformationResistingModes.
  • Implemented the feature of complementing missing parts of QR Code & DataMatrix barcodes. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> BarcodeComplementModes.
  • Added a new setting AutoFilter to set whether to filter frames automatically in the struct FrameDecodingParameters.
  • Added a new setting ScaleUpModes to set the scale-up mode for linear barcodes with small module size. It can be enabled by turning on the struct PublicRuntimeSettings -> ScaleUpModes.

IMPROVED

  • Improved the decoding accuracy for DataMatrix that has a narrow quiet zone.
  • Improved the decoding accuracy for 1D barcode that has a small module size.

7.2.2 (11/13/2019)

FIXED

  • Fixed a bug where BarcodeBytes was null when DPM mode was enabled.

7.2.1 (11/12/2019)

New

  • Added support for GS1-128 barcode.
  • Added a new argument "RecordsetSizeOfLatestImages" for "IntermediateResultSavingMode" to specify how many sets of intermediate results are kept in the library.

IMPROVED

  • Improved the decoding capability of PDF417 by identifying the start and stop patterns of PDF417.
  • Improved the deblurring performance for wide 1D barcodes, which lowers the possibility of fake results.
  • Improved video decoding by optimizing frame filtering.
  • Optimized the automatic classification for Code 39 and Code 39 Extended.
  • Optimized the implementation of region pre-detection mode "RPM_GENERAL_GRAY_CONTRAST".
  • Enhanced the recognition of barcodes with small module sizes.
  • Changed ExtendedBarcodeFormatIds to BarcodeFormat_2 to support more barcode formats in the future.
  • Improved the setting template inside every sample. For consistency, now every sample uses one of templates of "Best Coverage", "Balance" and "Best Speed".

FIXED

  • Fixed a bug in the barcode zone type identification during general statistical localization.
  • Fixed minor bugs in result outputs.
  • Fixed a bug where OneDCodeDetails doesn't work.
  • Fixed a memory leak issue when decoding multiple barcodes in our sample App.

7.2 (09/24/2019)

New

  • Added more barcode formats:
    • 1. GS1 Databar (Omnidirectional, Truncated,
      Stacked, Stacked Omnidirectional, Limited,
      Expanded, Expanded Stacked)
    • 2. PatchCode
    • 3. Maxicode (mode 2-5)
    • 4. Micro PDF417
    • 5. Micro QR
    • 6. GS1 COMPOSITE (combination of OneD
      and PDF417/Micro PDF 417)
    • 7. Non-standard Barcode
  • Added the capability of reading DPM code. It can be enabled by turning on the struct PublicRuntimeSettings->furtherMode-> DPMCodeReadingModes and adding LM_STATISTICS_MARKS to the PublicRuntimeSettings->localizationModes.
  • Added a ReactNative package for iOS
  • Licensing is required to obtain the intermediate results, except the original image in the intermediate results.
  • Added a parameter, clarity in the struct ExtendedResult, to show the clarity of the decoded-barcode zone.
  • For iOS, added a method, GetModeArgument(), to get the argument value of the mode parameters.
  • For Android, added a method, getModeArgument(), to get the argument value of the mode parameters.

IMPROVED

  • Improved the decoding speed for PDF417.
  • Improved the capability of decoding QR and Data Matrix with cylinder-like deformation.

FIXED

  • Fixed minor bugs

7.1 (08/15/2019)

New

  • Added automatic blurry frame filtering for the video frame decoding, reducing incorrect barcode recognition.
  • Added three arguments for the CICM_GENERAL of ColourConversionModes to set the weights for the colour conversion, providing more flexibility to deal with various kinds of backgrounds by using different weights of three colors: red, green and blue.
  • For Android, added two new methods, startFrameDecodingEx(), which can be used to start a new thread to decode barcodes, and initFrameDecodingParameters(), and a new struct, FrameDecodingParameters.
  • For iOS, added two new methods, StartFrameDecodingEx(), which can be used to start a new thread to decode barcodes, and InitFrameDecodingParameters(), and a new struct, iFrameDecodingParameters.

IMPROVED

  • The output of intermediate results can be saved either directly to a folder or to memory or both, by introducing a new parameter, intermediateResultSavingMode, to the struct PublicRuntimeSettings.

FIXED

  • Fixed a bug that the deblur function might malfunction in some rare cases.
  • Fixed a bug that the coordinates of barcodes may be calculated incorrectly under some situations.
  • Fixed a bug that the parameter, RequireStartStopChars, might malfunction in some rare cases.
  • Fixed a bug that the angle of barcodes might not be calculated correctly sometimes.

7.0 (07/11/2019)

New

  • Refactored most modules to provide a flexible barcode reading framework that allows for parameter customization suited for a variety of barcode scenarios.
  • Enabled access to intermediate results (grayscale image, binarized image, text zone, etc) during the decoding process.
  • Added new interfaces to support video decoding, and frame decoding to improve interactive sensitivity.
  • Provided methods to terminate the decoding process at different phases such as during binarization, localization or barcode type identification.
  • Added a new barcode localization method, Scan Directly, to reduce decoding time significantly for high-quality images.

IMPROVED

  • Enhanced error messages related to the license initiation failure.
  • Improved detailed results for decoded barcodes, including more barcode format specification.
  • Improved results output to enable outputting barcode results in the order of confidence level, barcode position or format.

FIXED

  • Fixed an issue where the barcode could be calculated incorrectly in some occasions.

6.5.2 (05/28/2019)

IMPROVED

  • Optimized barcode reading workflow for QRCode/DataMatrix/Aztec code recognition. A QRCode/DataMatrix/Aztec barcode zone will be submitted to the deblurring process when its decoding results vary with different binarization arguments.
  • Reduced the error rate of 1D barcode recognition. Giving more chances for confirmation of a 1D barcode decoding result whose confidence isn’t extreme high.
  • Reduced the possibility of conflicts with neighbour barcodes. This improved the precision of the zone to be deleted when a barcode is recognized successfully.

FIXED

  • Enhanced the robustness of the image processing algorithm. This resolved segmentation faults when a 0-size image is passed to our SDK or there are a few small-size barcode zones which need to do spatial transformation.

6.5.1 (04/16/2019)

IMPROVED

  • Improved deblur algorithm for OneD, enhancing the recognition rate for blurry/out-of-focus barcodes.
  • Improved the accuracy of border location and symbol segmentation for AZTEC.
  • Optimized line scanning algorithm for OneD, decreasing the computation load for character recognition.
  • DecodeBuffer now supports 48-bit and 64-bit image data.

FIXED

  • Small fixes and tweaks.

6.5 (02/26/2019)

IMPROVED

  • Improved average reading speed by 5-10%.
  • Greatly improved the image-processing performance for blurry PDF417 codes.
  • Improved decoding performance for blurry 1D, QRCode and DataMatrix codes.
  • Decreased error recognition rate for Aztec codes.

FIXED

  • Small fixes and tweaks.

6.4.1 (11/22/2018)

IMPROVED

  • Improved the decoding performance for Aztec, increasing the recognition rate.
  • Improved the decoding performance for OneD, decreasing the error recognition rate.
  • Added further check points for Timeouts, enhancing the timeout control on large scale images for decoding.

FIXED

  • Small fixes and tweaks.

6.4 (10/15/2018)

New

  • Added a BatchDecode tool which helps developers evaluate the recognition performance and speed of the Dynamsoft Barcode Reader SDK.
  • Added a new sample demonstrates how to use Dynamsoft Barcode Reader in multiple threads.
  • Added the runtime licensing mode. Please refer to this article.

IMPROVED

  • Improved barcode reading speed by 10%, especially for small-sized images.
  • Reorganized API documentation to help you find content more easily.
  • Simplified Developer’s Guide to guide you through creating a HelloWorld project more quickly.

FIXED

  • Small fixes and tweaks.

6.3 (08/16/2018)

New

  • Added the support for Aztec codes.
  • New developer's guide (.pdf) to cover common use cases,and re-worked existing PDF content to improve its usability.
  • New API documentation (.chm) to help you find content more easily.
  • Added GetRuntimeSettings and UpdateRuntimeSettings to help you adjust runtime barcode reading settings.
  • Added ResetRuntimeSettings to reset runtime barcode reading settings to default values.
  • Added InitRuntimeSettingsWithString and InitRuntimeSettingsWithFile to initialize barcode reading settings at runtime.
  • Added OutputSettingsToString and OutputSettingsToFile to review runtime barcode reading settings.
  • Added AppendTplStringToRuntimeSettings and AppendTplFileToRuntimeSettings to append a new template string/file to the current runtime settings.

IMPROVED

  • Improved the logic for ExpectedBarcodesCount. Previously the barcodes it returned may be greater than the given value of ExpectedBarcodesCount. Now as long as the expected barcodes found, it will stop continue searching and decoding barcodes.

FIXED

  • Small fixes and tweaks.

6.2 (06/28/2018)

New

For Android and IOS

  • Easy and flexible to create a custom barcode reading template for your specific use case.
  • Greatly improved barcode reading speed.
  • Decreased misreading rate for 1D barcodes.
  • Enhanced performance for reading multiple barcodes from an image.
  • Optimized reading accuracy and speed for blurred QRCode and DataMatrix.
  • Improved the speed for reading barcodes directly from a computer/phone screen.

FIXED

For Android and IOS

  • Small fixes and tweaks.

Previous Changes

7.6 (09/01/2020)

IMPROVED

  • Upgraded to the latest barcode engine.

7.5 (08/03/2020)

NEW

  • Added GPU acceleration on browsers supporting WebGL and OffscreenCanvas. GPU acceleration is enabled by default for browsers that support it.
  • Added an experimental 'single' option for 'BarcodeScanner' 'updateRuntimeSettings' to optimize decoding speeds when reading only one barcode at a time.

IMPROVED

  • Upgraded to the latest algorithm.

FIXED

  • Fixed an issue where decoding a URL did not work on iOS Safari.
  • Fixed a module loading issue on MacOS 10.15 x Safari 13.0.2.

7.4.0.1 (05/18/2020)

IMPROVED

  • Improved error handling for decoding methods.

FIXED

  • Fixed a bug where decoding MaxiCode barcodes could cause an out of memory exception.
  • Fixed a bug where partial DotCode and Postal Code results were not returned when using an expired license.

7.4 (05/12/2020)

NEW

  • Added a new barcode type Dotcode.
  • Added the morphology algorithm for image preprocessing.
  • Added the pixel formats IPF_ABGR_8888, IPF_ABGR_16161616 and IPF_BGR_888 to support more image buffer types.
  • Added a new intermediate result type IRT_PREDETECTED_QUADRILATERAL.
  • Added a new result data type IMRDT_QUADRILATERAL.
  • Added a new sample for PWA.
  • Added deformation resistance to DataMatrix.

IMPROVED

  • The method decodebuffer now uses the pixel format IPF_ABGR_8888 by default.
  • Enhanced deformation resistance for QR.
  • Optimized the algorithm for reading large-size dense QR and DataMatrix.
  • Optimized the algorithm for 1D barcode deblurring.
  • Simplified DPM configuration so that you only need to set DPMCodeReadingMode to enable it.

FIXED

  • Fixed a bug where Safari fails to open the video stream on some iPhones running iOS 12.

7.3.0-v4 (7.3.0.4) (04/02/2020)

NEW

  • Added support for Electron and NW.js. Official samples now provided.
  • Added an official sample for Nuxt.js.
  • Added error checking for unsupported symbologies for the compact edition.

IMPROVED

  • Improved the error messages for the scenario where no camera can be found.

FIXED

  • Fixed the bug in previous versions where an Android device may be miscounted as a Linux device.

7.3.0-v2 (7.3.0.2) (02/14/2020)

IMPROVED

  • Improved the process to release a camera in use. This makes it easier to destroy a Barcode Scanner instance in a component (Angular, Vue, React, etc.)

FIXED

  • Fixed the bug on iOS 12 where 1D barcode can't be read by a Barcode Scanner instance when the default "speed" template is used by fixing the localization mode "LM_CONNECTED_BLOCKS" and restoring it as the default mode.

7.3.0-v1 (7.3.0.1) (01/20/2020)

FIXED

  • Fixed a bug on iOS 12 where 1D barcode can't be read by a Barcode Scanner instance when the default "speed" template is used by changing the default localization mode from "LM_CONNECTED_BLOCKS" to "LM_SCAN_DIRECTLY". "LM_CONNECTED_BLOCKS" is the mode with the bug.

7.3 (01/14/2020)

New

  • Added a new barcode type Postal codes including USPS Intelligent Mail, Postnet, Planet, Australia Post barcode, RM4SCC.
  • Added a new localization mode LM_STATISTICS_POSTAL_CODE in the struct PublicRuntimeSettings -> LocalizationModes to recognize Postal codes.
  • Implemented the feature of recognizing distorted QR barcode. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> DeformationResistingModes.
  • Implemented the feature of complementing missing parts of QR Code & DataMatrix barcodes. It can be enabled by turning on the struct PublicRuntimeSettings -> FurtherModes -> BarcodeComplementModes.
  • Added a new setting ScaleUpModes to set the scale-up mode for linear barcodes with small module size. It can be enabled by turning on the struct PublicRuntimeSettings -> ScaleUpModes.
  • Added a new API Dynamsoft.BarcodeReader.detectEnvironment() that returns information like the OS type, browser type, WASM support, camera support, etc.
  • Added an instance property singleFrameMode, which when enabled, allows the user to open a UI to snap a single frame from the camera instead of showing its video stream in the browser for barcode reading.
  • Added two new APIs pauseScan() and resumeScan() to better handle the scanning process while showing the video stream.
  • Built-in several customizable UI elements and instruction sounds so that users can easily distinguish the following
    • Whether the BarcodeScanner instance is scanning
    • Which region the BarcodeScanner instance is scanning
    • Where the found barcode symbols are

IMPROVED

  • Improved the decoding accuracy for DataMatrix that has a narrow quiet zone.
  • Improved the decoding accuracy for 1D barcode that has a small module size.
  • Improved the logic for camera selecting so that a better camera may be selected by default in the case of having multiple cameras available.
  • Improved the method updateRuntimeSettings so that it accepts three default profiles namely "speed", "coverage" & "balance" thus making it easier to use. Note that "speed" is the default profile for each BarcodeScanner instance and "coverage" for each BarcodeReader instance.

7.2.2 (11/27/2019) · How to upgrade to this version?

NEW

  • Added frame filtering feature so that out-of-focus frames are discarded during the scanning operation.

IMPROVED

  • Updated algorithm to 7.2.2.
  • Improved the accuracy for OneD barcode decoding.
  • Two WASMs are provided for deployment
    1. Compact WASM: Default. Smaller but only supports OneD, PDF417, QR and DataMatrix codes.
    2. Full WASM: Bigger but has all features.

7.1 (08/29/2019)

IMPROVED

  • Updated algorithm to 7.1.
  • Improved the speed to download, build and initialize the library
  • Improved the readability of barcode result text by using UTF-8 encoding
  • Improved developer’s guide to be clearer and more precise
  • Renamed setScanSettings for updateScanSettings for naming consistence.

7.0 (08/09/2019)

NEW

  • Added the capability to enable/disable the torch/flashlight of a mobile device (when available, only Chrome on Android).
  • Added APIs for finer video control. These APIs are getAllCameras, getCurrentCamera, setCurrentCamera, getResolution, setResolution.

IMPROVED

  • Updated algorithm to 7.0.
  • Updated default runtimeSettings for BarcodeScanner.
  • Improved 1D barcode decoding accuracy by comparing results from multiple frames.
  • Improved the namespace and overall structure of the APIs while maintaining backward compliance.

FIXED

  • Fixed a bug that the camera source changes when changing resolution.
  • Fixed a bug in Edge that resolution changes incorrectly.
  • Small fixes and tweaks.

6.5.2 (06/12/2019)

NEW

  • Added compatibility for CSP (Content Security Policy).
  • Added samples for Vue, React and Angular.

IMPROVED

  • Optimized workflow for QRCode/DataMatrix/Aztec code recognition. A QRCode/DataMatrix/Aztec barcode zone will be submitted to the deblurring process when its decoding results vary with different binarization arguments.
  • Reduced the error rate of 1D barcode recognition, resulting in a higher chance to successfully confirm a 1D barcode result whose confidence is not extremely high.
  • Reduced the possibility of conflicts with neighbour barcodes, improving the precision of the zone to be deleted when a barcode is recognized successfully.
  • Super large-size (4096x4096 pixels) images can be processed and decoded.
  • The license key can be written in the script label.

FIXED

  • Enhanced the robustness of the image processing algorithm. This resolved segmentation faults when a 0-size image is passed to our SDK or when there are a few small barcode zones which require spatial transformation.
  • Small fixes and tweaks.

6.5.1 (04/28/2019)

NEW

  • Added d.ts file to support typescript.
  • Added the UMS/ESM export for Node.js.
  • Added a built-in scanner construct to support video settings.

IMPROVED

  • Moved the configuration from dynamsoft.dbrEnv to dynamsoft.BarcodeReader so you can export the dbr object.
  • Changed the logic to check if worker is needed automatically in the environment.
  • Improved deblur algorithm for OneD, enhancing the recognition rate for blurry/out-of-focus barcodes.
  • Improved the accuracy of border location and symbol segmentation for AZTEC.
  • Optimized line scanning algorithm for OneD, decreasing the computation load for character recognition.
  • DecodeBuffer now supports 48-bit and 64-bit image data.

FIXED

  • Small fixes and tweaks.

6.5 (03/14/2019)

IMPROVED

  • Reduced the library file (.WASM) size to around 2MB.
  • Reduced build time by 106% and Improved decoding time by 98%.
  • Improved the recognition rate of 1D codes with a new verification algorithm.
  • Greatly improved the image-processing performance for blurry PDF 417 codes and decoding performance for blurry 1D, QR, and Data Matrix codes.
  • Decreased error recognition rate for Aztec Codes.

FIXED

  • Small fixes and tweaks.

6.4.1 (12/11/2018)

IMPROVED

  • Fast loading and initialization and support of Web Worker to ensure seamless and smooth barcode scanning instantly.
  • Improved the decoding performance for Aztec, increasing the recognition rate.
  • Improved the decoding performance for OneD, decreasing the error recognition rate.
  • Added further check points for Timeouts, enhancing the timeout control on large scale images for decoding.

FIXED

  • Small fixes and tweaks.

Previous Changes

6.3 (08/16/2018)

New

  • Added the support for Aztec codes.
  • New developer's guide (.pdf) to cover common use cases,and re-worked existing PDF content to improve its usability.
  • New API documentation (.chm) to help you find content more easily.
  • Added GetRuntimeSettings and UpdateRuntimeSettings to help you adjust runtime barcode reading settings.
  • Added ResetRuntimeSettings to reset runtime barcode reading settings to default values.
  • Added InitRuntimeSettingsWithString and InitRuntimeSettingsWithFile to initialize barcode reading settings at runtime.
  • Added OutputSettingsToString and OutputSettingsToFile to review runtime barcode reading settings.
  • Added AppendTplStringToRuntimeSettings and AppendTplFileToRuntimeSettings to append a new template string/file to the current runtime settings.

IMPROVED

  • Improved the logic for ExpectedBarcodesCount. Previously the barcodes it returned may be greater than the given value of ExpectedBarcodesCount. Now as long as the expected barcodes found, it will stop continue searching and decoding barcodes.

FIXED

  • Small fixes and tweaks.

5.2 (09/18/2017)

IMPROVED

  • Improved the localization and recognition algorithms for PDF417 barcodes.
  • Optimized the de-blur algorithm for 1D barcodes to improve the recognition accuracy.
  • Optimized the timeout support. Now it is possible to stop barcode recognition by timeout.
  • Increased QR Code and DataMatrix barcode recognition speed for B&W images.

FIXED

  • Small fixes and tweaks.

4.2 (04/08/2016)

IMPROVED

  • Changed 1D barcode decoding module to improve recognition accuracy.
  • Improved ResultPoints Property to adjust the sequence of barcode corner points. Now the top-left corner of the barcode is the starting point (x1, y1). The results are returned in the clockwise direction.
    Improved ResultPoints Property to adjust the sequence of barcode corner points.

4.1 (01/21/2016)

NEW

  • Added new APIs DecodeStream, DecodeStreamRect, DecodeBase64String and DecodeBase64StringRect for C, C++ DLL.
  • Added Error Code -10022: "PDF Rasterizer DLL Miss".

4.0 (11/03/2015)

NEW

  • Added support for reading PDF417 and DataMatrix.

Previous Changes