Announcing Dynamsoft Barcode Reader v8.0

Last Updated on 2020-11-26

We are excited to release Dynamsoft Barcode Reader v8.0, which is a major release with a set of new features and improvements. The SDK is now available for Windows, Linux, Android, and iOS development, and other editions are coming soon. We hope the new version can bring more flexibility, efficiency, and productivity to developers.

Download Barcode SDK for Windows, Linux, Android, and iOS


  • Implemented the mechanism of loading algorithm libraries dynamically at runtime for Windows and Linux.
#ifndef Linux
reader->SetModeArgument("binarizationModes", 0, "LibraryFileName", ".dll", errorMessage, 256);
reader->SetModeArgument("binarizationModes", 0, "LibraryFileName", " ", errorMessage, 256);
  • Added support for decoding intermediate results. Users with a binary image could use this function to skip some image preprocessing steps.
IntermediateResult* input = NULL;
reader->InitIntermediateResult(IRT_ORIGINAL_IMAGE, input);
input->resultsCount = 1;
input->results = (void**)malloc(sizeof(ImageData*));
ImageData * temp = (ImageData*)malloc(sizeof(ImageData));
int len = iHeight*iStride;
temp->bytes = (unsigned char *)malloc(sizeof(unsigned char) * len);
memcpy(temp->bytes, binary_image, len);
reader->DecodeIntermediateResults(input, "");
  • Implemented a new licensing tracking mechanism, License 2.0, which makes it easier for users to track license usage.
DM_LTSConnectionParameters ltspar;    
ltspar.handshakeCode = "";
iRet = reader.InitLicenseFromLTS(&ltspar,szErrorMsg,256);
  • Added a new format control parameter, BarcodeZoneMinDistanceToImageBorders, to set the minimum distance (in pixels) between the barcode zone and image borders.
reader->InitRuntimeSettingsWithString("{\n\"ImageParameter\": {\n\"FormatSpecificationNameArray\": [ \"IP1\" ],\n\"Name\": \"Test\"\n},\n\"FormatSpecification\": {\n\"Name\": \"IP1\",\n\"BarcodeZoneMinDistanceToImageBorders\": 4\n},\n\"Version\": \"3.0\"\n}\n", CM_OVERWRITE, errorMessage, 256);
  • Added a new format control parameter, MinRatioOfBarcodeZoneWidthToHeight, to set the minimum ratio (width/height) of the barcode zone.
reader->InitRuntimeSettingsWithString("{\n\"ImageParameter\": {\n\"FormatSpecificationNameArray\": [ \"IP1\" ],\n\"Name\": \"Test\"\n},\n\"FormatSpecification\": {\n\"Name\": \"IP1\",\n\"MinRatioOfBarcodeZoneWidthToHeight\": 100\n},\n\"Version\": \"3.0\"\n}\n", CM_OVERWRITE, errorMessage, 256);
  • Added a new format control parameter, BarcodeZoneBarCountRangeArray, to set the barcode zone’s range of bar count for barcode search.
reader->InitRuntimeSettingsWithString("{\n\"ImageParameter\": {\n\"FormatSpecificationNameArray\": [ \"IP1\" ],\n\"Name\": \"Test\"\n},\n\"FormatSpecification\": {\n\"Name\": \"IP1\",\n\"BarcodeZoneBarCountRangeArray\": [{\"MaxValue\": 50, \"MinValue\":14},{\"MaxValue\": 12, \"MinValue\":1}]\n},\n\"Version\": \"3.0\"\n}\n", CM_OVERWRITE, errorMessage, 256);
  • Added a new parameter, DeblurModes, so users can use different deblur algorithms for different scenarios. DeblurModes has the following enum types: DirectBinarization, ThresholdBinarization, GrayEqulization, Smoothing, and Morphing.
  • Improved the localization speed for the ScanDirectly mode.
  • Improved the localization accuracy for DataMatrix code with a narrow quiet zone.

You can get the C/C++ and C# sample code to learn Dynamsoft Barcode Reader 8.0 API usage.

Online Documentation

Try Online Demo

Get Free 30-day Trial License

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Subscribe Newsletter

Subscribe to our mailing list to get the monthly update.