How to Upgrade
From version 9.x or earlier to version 10.x
Dynamsoft Barcode Reader SDK has been refactored to integrate with DynamsoftCaptureVision (DCV)
architecture. To upgrade from version 9.x or earlier to 10.x, we recommend you to follow the User Guide and re-write your codes.
Update the License Key
Request a 30-Day Free Trial License
Visit the Request a Trial License page to obtain a 30-day free license. This option is ideal for initial evaluation or testing of new SDK features.
Annual Online Full License
If you are using an Annual Online Full License, your license will continue to work with the current SDK version without the need for updates. Go to Customer Portal to get your license key.
Perpetual License
For users with a Perpetual License, please contact our sales team to update your license. You can reach out through our Contacting Us page for assistance.
Migrate to New Package
As of version 10.0, the nuget package Dynamsoft.DotNet.Barcode
has been renamed to Dynamsoft.DotNet.BarcodeReader.Bundle
to reflect changes in both architecture and API design. Start command prompt and run the following command to install the new package.
NuGet\Install-Package Dynamsoft.DotNet.BarcodeReader.Bundle
Update the License Activation Code
Starting from 10.0, we have unified the API for setting licenses across different Dynamsoft products.
Old APIs | New APIs |
---|---|
BarcodeReader.InitLicense |
CLicenseManager.InitLicense |
Update Single Image Decoding APIs
The APIs for decoding single image has been adjusted as follows:
Old APIs | New APIs |
---|---|
BarcodeReader.DecodeFile |
CaptureVisionRouter.Capture(string filePath, string templateName="") |
BarcodeReader.DecodeFileInMemory |
CaptureVisionRouter.Capture(byte[] fileBytes, string templateName="") |
BarcodeReader.DecodeBuffer |
CaptureVisionRouter.Capture(ImageData imageData, string templateName="") |
class TextResult |
class BarcodeResultItem |
BarcodeReader.DecodeBase64String |
Currently not available. |
BarcodeReader.DecodeBitmap |
Currently not available. |
Update Video Streaming Decoding Code
ImageSourceAdapter
is added to replace the FrameDecodeingParameters
and the previous video methods. You should implement ImageSourceAdapter
to transfer image data from camera or video file to buffer.
Migrate Your Templates
The template system is upgraded. The template you used for the previous version can’t be directly recognized by the new version. Please download the TemplateConverter tool or contact us to upgrade your template.
The template-based APIs have been updated as follows:
Old APIs | New APIs |
---|---|
BarcodeReader.InitRuntimeSettingsWithFile |
CaptureVisionRouter.InitSettingsFromFile |
BarcodeReader.InitRuntimeSettingsWithString |
CaptureVisionRouter.InitSettings |
BarcodeReader.OutputSettingsToFile |
CaptureVisionRouter.OutputSettingsToFile |
BarcodeReader.OutputSettingsToString |
CaptureVisionRouter.OutputSettings |
BarcodeReader.ResetRuntimeSettings |
CaptureVisionRouter.ResetSettings |
BarcodeReader.AppendTplFileToRuntimeSettings |
Not available. |
BarcodeReader.AppendTplStringToRuntimeSettings |
Not available. |
BarcodeReader.GetAllParameterTemplateNames |
Not available. |
Migrate Your PublicRuntimeSettings
The struct PublicRuntimeSettings
has been refactored. It retains commonly used properties via SimplifiedCaptureVisionSettings
while removing the previously complex property settings, which are now exclusively supported through templates.
The APIs for accessing and updating PublicRuntimeSettings
has been adjusted as follows:
Old APIs | New APIs |
---|---|
BarcodeReader.GetRuntimeSettings |
CaptureVisionRouter.GetSimplifiedSettings |
BarcodeReader.UpdateRuntimeSettings |
CaptureVisionRouter.UpdateSettings |
Migrate to SimplifiedCaptureVisionSettings
The following properties are replaced by similar properties under SimplifiedCaptureVisionSettings
. They can also be set via a template file(String).
PublicRuntimeSettings Property | SimplifiedCaptureVisionSettings Parameter | Template File Parameter |
---|---|---|
Region |
roi & roiMeasuredInPercentage |
TargetROIDef.Location.Offset |
Timeout |
timeout |
CaptureVisionTemplates.Timeout |
Migrate to SimplifiedBarcodeReaderSettings
The following properties are replaced by similar properties under SimplifiedBarcodeReaderSettings
. The majority of them can also be set via a template file(String).
PublicRuntimeSettings Property | SimplifiedBarcodeReaderSettings Property | Template File Parameter |
---|---|---|
MinBarcodeTextLength |
minBarcodeTextLength |
BarcodeFormatSpecification.BarcodeTextLengthRangeArray |
MinResultConfidence |
minResultConfidence |
BarcodeFormatSpecification.MinResultConfidence |
LocalizationModes |
localizationModes |
BarcodeReaderTaskSetting.LocationModes |
ExpectedBarcodesCount |
expectedBarcodesCount |
BarcodeReaderTaskSetting.ExpectedBarcodesCount |
BarcodeFormatIds |
barcodeFormatIds |
BarcodeReaderTaskSetting.BarcodeFormatIds |
BarcodeFormatIds_2 |
barcodeFormatIds |
BarcodeReaderTaskSetting.BarcodeFormatIds |
DeblurModes |
deblurModes |
BarcodeReaderTaskSetting.DeblurModes |
DeblurLevel |
deblurModes |
BarcodeReaderTaskSetting.DeblurModes |
MaxAlgorithmThreadCount |
maxThreadsInOneTask |
BarcodeReaderTaskSetting.MaxThreadsInOneTask |
Remarks:
- The 2 groups of barcode formats are merged.
DeblurLevel
is deprecated. You can useDeblurModes
instead.
FurtherModes Property | SimplifiedBarcodeReaderSettings Property | Template File Parameter |
---|---|---|
GrayscaleTransformationModes |
grayscaleTransformationModes |
ImageParameter.GrayscaleTransformationModes |
ImagePreprocessingModes |
grayscaleEnhancementModes |
ImageParameter.GrayscaleEnhancementModes |
Remarks: The mode
IPM_MORPHOLOGY
ofImagePreprocessingModes
is migrated toBinarizationModes
. The mode argumentsMorphOperation
,MorphOperationKernelSizeX
,MorphOperationKernelSizeY
,MorphShape
are now available for all modes ofBinarizationModes
.
Migrate to Template File
The following properties can only be set via a template file. Please contact us so that we can help you to transform your current settings to a new template file.
PublicRuntimeSettings Property | Template File Parameter |
---|---|
ScaleDownThreshold |
ImageParameter.ScaleDownThreshold |
BinarizationModes |
ImageParameter.BinarizationModes |
TextResultOrderModes |
BarcodeReaderTaskSetting.TextResultOrderModes |
ReturnBarcodeZoneClarity |
BarcodeReaderTaskSetting.ReturnBarcodeZoneClarity |
ScaleUpModes |
ImageParameter.ScaleUpModes |
BarcodeZoneMinDistanceToImageBorders |
BarcodeFormatSpecification.BarcodeZoneMinDistanceToImageBorders |
TerminatePhase |
BarcodeReaderTaskSetting.TerminateSettings |
FurtherModes Property | Template File Parameter |
---|---|
ColourConversionModes |
ImageParameter.ColourConversionModes |
RegionPredetectionModes |
ImageParameter.RegionPredetectionModes |
TextureDetectionModes |
ImageParameter.TextureDetectionModes |
TextFilterModes |
ImageParameter.TextDetectionMode & ImageParameter.IfEraseTextZone |
DPMCodeReadingModes |
BarcodeReaderTaskSetting.DPMCodeReadingModes |
DeformationResistingModes |
BarcodeReaderTaskSetting.DeformationResistingModes |
BarcodeComplementModes |
BarcodeReaderTaskSetting.BarcodeComplementModes |
BarcodeColourModes |
BarcodeReaderTaskSetting.BarcodeColourModes |
Migrate to Other APIs
The PDF properties of PublicRuntimeSettings are moved to set via the setPDFReadingParameter
method of DirectoryFetcher
and FileFetcher
with a PDFReadingParameter
parameter.
PublicRuntimeSettings Property |
---|
PDFReadingMode |
PDFRasterDPI |
The Intermediate Result
system is redesigned and the following properties are deprecated.
PublicRuntimeSettings Property |
---|
IntermediateResultTypes |
IntermediateResultSavingMode |
Removed
The following properties are removed.
PublicRuntimeSettings Property |
---|
ResultCoordinateType |
FurtherModes Property |
---|
ColourClusteringModes |