Dynamsoft Barcode Reader - API Reference
Enumerations
Enumerations

Enumerations

enum  BarcodeFormat {
  BF_ALL = -32505857, BF_ONED = 0x000007FF, BF_GS1_DATABAR = 0x0003F800, BF_POSTALCODE = 0x01F00000,
  BF_CODE_39 = 0x1, BF_CODE_128 = 0x2, BF_CODE_93 = 0x4, BF_CODABAR = 0x8,
  BF_ITF = 0x10, BF_EAN_13 = 0x20, BF_EAN_8 = 0x40, BF_UPC_A = 0x80,
  BF_UPC_E = 0x100, BF_INDUSTRIAL_25 = 0x200, BF_CODE_39_EXTENDED = 0x400, BF_GS1_DATABAR_OMNIDIRECTIONAL = 0x800,
  BF_GS1_DATABAR_TRUNCATED = 0x1000, BF_GS1_DATABAR_STACKED = 0x2000, BF_GS1_DATABAR_STACKED_OMNIDIRECTIONAL = 0x4000, BF_GS1_DATABAR_EXPANDED = 0x8000,
  BF_GS1_DATABAR_EXPANDED_STACKED = 0x10000, BF_GS1_DATABAR_LIMITED = 0x20000, BF_PATCHCODE = 0x00040000, BF_USPSINTELLIGENTMAIL = 0x00100000,
  BF_POSTNET = 0x00200000, BF_PLANET = 0x00400000, BF_AUSTRALIANPOST = 0x00800000, BF_UKROYALMAIL = 0x01000000,
  BF_PDF417 = 0x02000000, BF_QR_CODE = 0x04000000, BF_DATAMATRIX = 0x08000000, BF_AZTEC = 0x10000000,
  BF_MAXICODE = 0x20000000, BF_MICRO_QR = 0x40000000, BF_MICRO_PDF417 = 0x00080000, BF_GS1_COMPOSITE = -2147483648,
  BF_NULL = 0x00
}
 
enum  BarcodeFormat_2 { BF2_NULL = 0x00, BF2_NONSTANDARD_BARCODE = 0x01 }
 
enum  BarcodeComplementMode { BCM_AUTO = 0x01, BCM_GENERAL = 0x02, BCM_SKIP = 0x00 }
 
enum  ImagePixelFormat {
  IPF_BINARY, IPF_BINARYINVERTED, IPF_GRAYSCALED, IPF_NV21,
  IPF_RGB_565, IPF_RGB_555, IPF_RGB_888, IPF_ARGB_8888,
  IPF_RGB_161616, IPF_ARGB_16161616
}
 
enum  BarcodeColourMode {
  BICM_DARK_ON_LIGHT = 0x01, BICM_LIGHT_ON_DARK = 0x02, BICM_DARK_ON_DARK = 0x04, BICM_LIGHT_ON_LIGHT = 0x08,
  BICM_DARK_LIGHT_MIXED = 0x10, BICM_DARK_ON_LIGHT_DARK_SURROUNDING = 0x20, BICM_SKIP = 0x00
}
 
enum  BinarizationMode { BM_AUTO = 0x01, BM_LOCAL_BLOCK = 0x02, BM_SKIP = 0x00 }
 
enum  ColourClusteringMode { CCM_AUTO = 0x00000001, CCM_GENERAL_HSV = 0x00000002, CCM_SKIP = 0x00 }
 
enum  ColourConversionMode { CICM_GENERAL = 0x01, CICM_SKIP = 0x00 }
 
enum  DPMCodeReadingMode { DPMCRM_AUTO = 0x01, DPMCRM_GENERAL = 0x02, DPMCRM_SKIP = 0x00 }
 
enum  ConflictMode { CM_IGNORE = 1, CM_OVERWRITE = 2 }
 
enum  ImagePreprocessingMode {
  IPM_AUTO = 0x01, IPM_GENERAL = 0x02, IPM_GRAY_EQUALIZE = 0x04, IPM_GRAY_SMOOTH = 0x08,
  IPM_SHARPEN_SMOOTH = 0x10, IPM_SKIP = 0x00
}
 
enum  IntermediateResultType {
  IRT_NO_RESULT = 0x00000000, IRT_ORIGINAL_IMAGE = 0x00000001, IRT_COLOUR_CLUSTERED_IMAGE = 0x00000002, IRT_COLOUR_CONVERTED_GRAYSCALE_IMAGE = 0x00000004,
  IRT_TRANSFORMED_GRAYSCALE_IMAGE = 0x00000008, IRT_PREDETECTED_REGION = 0x00000010, IRT_PREPROCESSED_IMAGE = 0x00000020, IRT_BINARIZED_IMAGE = 0x00000040,
  IRT_TEXT_ZONE = 0x00000080, IRT_CONTOUR = 0x00000100, IRT_LINE_SEGMENT = 0x00000200, IRT_FORM = 0x00000400,
  IRT_SEGMENTATION_BLOCK = 0x00000800, IRT_TYPED_BARCODE_ZONE = 0x00001000
}
 
enum  LocalizationMode {
  LM_AUTO = 0x01, LM_CONNECTED_BLOCKS = 0x02, LM_STATISTICS = 0x04, LM_LINES = 0x08,
  LM_SCAN_DIRECTLY = 0x10, LM_STATISTICS_MARKS = 0x20, LM_SKIP = 0x00
}
 
enum  QRCodeErrorCorrectionLevel { QRECL_ERROR_CORRECTION_H, QRECL_ERROR_CORRECTION_L, QRECL_ERROR_CORRECTION_M, QRECL_ERROR_CORRECTION_Q }
 
enum  RegionPredetectionMode {
  RPM_AUTO = 0x01, RPM_GENERAL = 0x02, RPM_GENERAL_RGB_CONTRAST = 0x04, RPM_GENERAL_GRAY_CONTRAST = 0x08,
  RPM_GENERAL_HSV_CONTRAST = 0x10, RPM_SKIP = 0x00
}
 
enum  DeformationResistingMode { DRM_AUTO = 0x01, DRM_GENERAL = 0x02, DRM_SKIP = 0x00 }
 
enum  ResultType { RT_STANDARD_TEXT, RT_RAW_TEXT, RT_CANDIDATE_TEXT, RT_PARTIAL_TEXT }
 
enum  TerminatePhase {
  TP_REGION_PREDETECTED = 0x00000001, TP_IMAGE_PREPROCESSED = 0x00000002, TP_IMAGE_BINARIZED = 0x00000004, TP_BARCODE_LOCALIZED = 0x00000008,
  TP_BARCODE_TYPE_DETERMINED = 0x00000010, TP_BARCODE_RECOGNIZED = 0x00000020
}
 
enum  TextAssistedCorrectionMode { TACM_AUTO = 0x01, TACM_VERIFYING = 0x02, TACM_VERIFYING_PATCHING = 0x04, TACM_SKIP = 0x00 }
 
enum  TextFilterMode { TFM_AUTO = 0x01, TFM_GENERAL_CONTOUR = 0x02, TFM_SKIP = 0x00 }
 
enum  IntermediateResultSavingMode { IRSM_MEMORY = 0x01, IRSM_FILESYSTEM = 0x02, IRSM_BOTH = 0x04 }
 
enum  TextResultOrderMode { TROM_CONFIDENCE = 0x01, TROM_POSITION = 0x02, TROM_FORMAT = 0x04, TROM_SKIP = 0x00 }
 
enum  TextureDetectionMode { TDM_AUTO = 0X01, TDM_GENERAL_WIDTH_CONCENTRATION = 0X02, TDM_SKIP = 0x00 }
 
enum  GrayscaleTransformationMode { GTM_INVERTED = 0x01, GTM_ORIGINAL = 0x02, GTM_SKIP = 0x00 }
 
enum  ResultCoordinateType { RCT_PIXEL = 0x01, RCT_PERCENTAGE = 0x02 }
 
enum  IMResultDataType {
  IMRDT_IMAGE = 0x01, IMRDT_CONTOUR = 0x02, IMRDT_LINESEGMENT = 0x04, IMRDT_LOCALIZATIONRESULT = 0x08,
  IMRDT_REGIONOFINTEREST = 0x10
}
 

Enumeration Type Documentation

◆ BarcodeColourMode

Describes the barcode colour mode.

Enumerator
BICM_DARK_ON_LIGHT 

Dark items on a light background. Check Arguments of BarcodeColourModes for available argument settings.

BICM_LIGHT_ON_DARK 

Light items on a dark background. Not supported yet. Check Arguments of BarcodeColourModes for available argument settings.

BICM_DARK_ON_DARK 

Dark items on a dark background. Not supported yet. Check Arguments of BarcodeColourModes for available argument settings.

BICM_LIGHT_ON_LIGHT 

Light items on a light background. Not supported yet. Check Arguments of BarcodeColourModes for available argument settings.

BICM_DARK_LIGHT_MIXED 

The background is mixed by dark and light. Not supported yet. Check Arguments of BarcodeColourModes for available argument settings.

BICM_DARK_ON_LIGHT_DARK_SURROUNDING 

Dark item on a light background surrounded by dark. Check Arguments of BarcodeColourModes for available argument settings.

BICM_SKIP 

Skips the barcode colour operation.

◆ BarcodeComplementMode

Describes the barcode complement mode.

Enumerator
BCM_AUTO 

Not supported yet.

BCM_GENERAL 

Complements the barcode using the general algorithm.

BCM_SKIP 

Skips the barcode complement.

◆ BarcodeFormat

Describes the barcode types in BarcodeFormat group 1. All the formats can be combined, such as BF_CODE_39 | BF_CODE_128. Note: The barcode format our library will search for is composed of BarcodeFormat group 1 and BarcodeFormat group 2, so you need to specify the barcode format in group 1 and group 2 individually.

Enumerator
BF_ALL 

All supported formats

BF_ONED 

Combined value of BF_CODABAR, BF_CODE_128, BF_CODE_39, BF_CODE_39_Extended, BF_CODE_93, BF_EAN_13, BF_EAN_8, INDUSTRIAL_25, BF_ITF, BF_UPC_A, BF_UPC_E;

BF_GS1_DATABAR 

Combined value of BF_GS1_DATABAR_OMNIDIRECTIONAL, BF_GS1_DATABAR_TRUNCATED, BF_GS1_DATABAR_STACKED, BF_GS1_DATABAR_STACKED_OMNIDIRECTIONAL, BF_GS1_DATABAR_EXPANDED, BF_GS1_DATABAR_EXPANDED_STACKED, BF_GS1_DATABAR_LIMITED

BF_POSTALCODE 

Combined value of BF_USPSINTELLIGENTMAIL, BF_POSTNET, BF_PLANET, BF_AUSTRALIANPOST, BF_UKROYALMAIL. Not supported yet.

BF_CODE_39 

Code 39

BF_CODE_128 

Code 128

BF_CODE_93 

Code 93

BF_CODABAR 

Codabar

BF_ITF 

ITF

BF_EAN_13 

EAN-13

BF_EAN_8 

EAN-8

BF_UPC_A 

UPC-A

BF_UPC_E 

UPC-E

BF_INDUSTRIAL_25 

Industrial 2 of 5

BF_CODE_39_EXTENDED 

CODE39 Extended

BF_GS1_DATABAR_OMNIDIRECTIONAL 

GS1 Databar Omnidirectional

BF_GS1_DATABAR_TRUNCATED 

GS1 Databar Truncated

BF_GS1_DATABAR_STACKED 

GS1 Databar Stacked

BF_GS1_DATABAR_STACKED_OMNIDIRECTIONAL 

GS1 Databar Stacked Omnidirectional

BF_GS1_DATABAR_EXPANDED 

GS1 Databar Expanded

BF_GS1_DATABAR_EXPANDED_STACKED 

GS1 Databar Expaned Stacked

BF_GS1_DATABAR_LIMITED 

GS1 Databar Limited

BF_PATCHCODE 

Patch code.

BF_USPSINTELLIGENTMAIL 

USPS Intelligent Mail. Not supported yet.

BF_POSTNET 

Postnet. Not supported yet.

BF_PLANET 

Planet. Not supported yet.

BF_AUSTRALIANPOST 

Australian Post. Not supported yet.

BF_UKROYALMAIL 

UK Royal Mail. Not supported yet.

BF_PDF417 

PDF417

BF_QR_CODE 

QRCode

BF_DATAMATRIX 

DataMatrix

BF_AZTEC 

AZTEC

BF_MAXICODE 

MAXICODE

BF_MICRO_QR 

Micro QR Code

BF_MICRO_PDF417 

Micro PDF417

BF_GS1_COMPOSITE 

GS1 Composite Code

BF_NULL 

No barcode format in BarcodeFormat group 1

◆ BarcodeFormat_2

Describes the barcode types in BarcodeFormat group 2. Note: The barcode format our library will search for is composed of BarcodeFormat group 1 and BarcodeFormat group 2, so you need to specify the barcode format in group 1 and group 2 individually.

Enumerator
BF2_NULL 

No barcode format in BarcodeFormat group 2

BF2_NONSTANDARD_BARCODE 

Nonstandard barcode

◆ BinarizationMode

Describes the binarization mode.

Enumerator
BM_AUTO 

Not supported yet.

BM_LOCAL_BLOCK 

Binarizes the image based on the local block. Check Arguments of BinarizationModes for available argument settings.

BM_SKIP 

Skips the binarization.

◆ ColourClusteringMode

Describes the colour clustering mode.

Enumerator
CCM_AUTO 

Not supported yet.

CCM_GENERAL_HSV 

Clusters colours using the general algorithm based on HSV. Check Arguments of ColourClusteringModes for available argument settings.

CCM_SKIP 

Skips the colour clustering.

◆ ColourConversionMode

Describes the colour conversion mode.

Enumerator
CICM_GENERAL 

Converts a colour image to a grayscale image using the general algorithm. Check Arguments of ColourConversionModes for available argument settings.

CICM_SKIP 

Skips the colour conversion.

◆ ConflictMode

Describes the conflict mode.

Enumerator
CM_IGNORE 

Ignores new settings and inherits the previous settings.

CM_OVERWRITE 

Overwrites the old settings with new settings.

◆ DeformationResistingMode

Describes the deformation resisting mode.

Enumerator
DRM_AUTO 

Not supported yet.

DRM_GENERAL 

Resists deformation using the general algorithm. Check Arguments of DeformationResistingModes for available argument settings.

DRM_SKIP 

Skips deformation resisting.

◆ DPMCodeReadingMode

Describes the DPM code reading mode.

Enumerator
DPMCRM_AUTO 

Not supported yet.

DPMCRM_GENERAL 

Reads DPM code using the general algorithm.

DPMCRM_SKIP 

Skips DPM code reading.

◆ GrayscaleTransformationMode

Describes the grayscale transformation mode.

Enumerator
GTM_INVERTED 

Transforms to inverted grayscale. Recommended for light on dark images.

GTM_ORIGINAL 

Keeps the original grayscale. Recommended for dark on light images.

GTM_SKIP 

Skips grayscale transformation.

◆ ImagePixelFormat

Describes the image pixel format.

Enumerator
IPF_BINARY 

0:Black, 1:White

IPF_BINARYINVERTED 

0:White, 1:Black

IPF_GRAYSCALED 

8bit gray

IPF_NV21 

NV21

IPF_RGB_565 

16bit

IPF_RGB_555 

16bit

IPF_RGB_888 

24bit

IPF_ARGB_8888 

32bit

IPF_RGB_161616 

48bit

IPF_ARGB_16161616 

64bit

◆ ImagePreprocessingMode

Describes the image preprocessing mode.

Enumerator
IPM_AUTO 

Not supported yet.

IPM_GENERAL 

Takes the unpreprocessed image for following operations.

IPM_GRAY_EQUALIZE 

Preprocesses the image using the gray equalization algorithm. Check Arguments of ImagePreprocessingModes for available argument settings.

IPM_GRAY_SMOOTH 

Preprocesses the image using the gray smoothing algorithm. Check Arguments of ImagePreprocessingModes for available argument settings.

IPM_SHARPEN_SMOOTH 

Preprocesses the image using the sharpening and smoothing algorithm. Check Arguments of ImagePreprocessingModes for available argument settings.

IPM_SKIP 

Skips image preprocessing.

◆ IMResultDataType

Describes the intermediate result data type.

Enumerator
IMRDT_IMAGE 

Specifies the ImageData

IMRDT_CONTOUR 

Specifies the Contour

IMRDT_LINESEGMENT 

Specifies the LineSegment

IMRDT_LOCALIZATIONRESULT 

Specifies the LocalizationResult

IMRDT_REGIONOFINTEREST 

Specifies the RegionOfInterest

◆ IntermediateResultSavingMode

Describes the intermediate result saving mode.

Enumerator
IRSM_MEMORY 

Saves intermediate results in memory.

IRSM_FILESYSTEM 

Saves intermediate results in file system. Check Arguments of IntermediateResultSavingMode for available argument settings.

IRSM_BOTH 

Saves intermediate results in both memory and file system. Check Arguments of IntermediateResultSavingMode for available argument settings.

◆ IntermediateResultType

Describes the intermediate result type.

Enumerator
IRT_NO_RESULT 

No intermediate result

IRT_ORIGINAL_IMAGE 

Original image

IRT_COLOUR_CLUSTERED_IMAGE 

Colour clustered image. Not supported yet.

IRT_COLOUR_CONVERTED_GRAYSCALE_IMAGE 

Colour image converted to grayscale

IRT_TRANSFORMED_GRAYSCALE_IMAGE 

Transformed grayscale image

IRT_PREDETECTED_REGION 

Predetected region

IRT_PREPROCESSED_IMAGE 

Preprocessed image

IRT_BINARIZED_IMAGE 

Binarized image

IRT_TEXT_ZONE 

Text zone

IRT_CONTOUR 

Contour

IRT_LINE_SEGMENT 

Line segment

IRT_FORM 

Form. Not supported yet.

IRT_SEGMENTATION_BLOCK 

Segmentation block. Not supported yet.

IRT_TYPED_BARCODE_ZONE 

Typed barcode zone

◆ LocalizationMode

Describes the localization mode.

Enumerator
LM_AUTO 

Not supported yet.

LM_CONNECTED_BLOCKS 

Localizes barcodes by searching for connected blocks. This algorithm usually gives best result and it is recommended to set ConnectedBlocks to the highest priority.

LM_STATISTICS 

Localizes barcodes by groups of contiguous black-white regions. This is optimized for QRCode and DataMatrix.

LM_LINES 

Localizes barcodes by searching for groups of lines. This is optimized for 1D and PDF417 barcodes.

LM_SCAN_DIRECTLY 

Localizes barcodes quickly. This mode is recommended in interactive scenario. Check Arguments of LocalizationModes for available argument settings.

LM_STATISTICS_MARKS 

Localizes barcodes by groups of marks.This is optimized for DPM codes.

LM_SKIP 

Skips localization.

◆ QRCodeErrorCorrectionLevel

Describes the QR Code error correction level.

Enumerator
QRECL_ERROR_CORRECTION_H 

Error Correction Level H (high)

QRECL_ERROR_CORRECTION_L 

Error Correction Level L (low)

QRECL_ERROR_CORRECTION_M 

Error Correction Level M (medium-low)

QRECL_ERROR_CORRECTION_Q 

Error Correction Level Q (medium-high)

◆ RegionPredetectionMode

Describes the region predetection mode.

Enumerator
RPM_AUTO 

Lets the library choose an algorithm automatically to detect region.

RPM_GENERAL 

Takes the whole image as a region.

RPM_GENERAL_RGB_CONTRAST 

Detects region using the general algorithm based on RGB colour contrast. Check Arguments of RegionPredetectionModes for available argument settings.

RPM_GENERAL_GRAY_CONTRAST 

Detects region using the general algorithm based on gray contrast. Check Arguments of RegionPredetectionModes for available argument settings.

RPM_GENERAL_HSV_CONTRAST 

Detects region using the general algorithm based on HSV colour contrast. Check Arguments of RegionPredetectionModes for available argument settings.

RPM_SKIP 

Skips region detection.

◆ ResultCoordinateType

Describes the result coordinate type.

Enumerator
RCT_PIXEL 

Returns the coordinate in pixel value.

RCT_PERCENTAGE 

Returns the coordinate as a percentage.

◆ ResultType

enum ResultType

Describes the extended result type.

Enumerator
RT_STANDARD_TEXT 

Specifies the standard text. This means the barcode value.

RT_RAW_TEXT 

Specifies the raw text. This means the text that includes start/stop characters, check digits, etc.

RT_CANDIDATE_TEXT 

Specifies all the candidate text. This means all the standard text results decoded from the barcode.

RT_PARTIAL_TEXT 

Specifies the partial text. This means part of the text result decoded from the barcode.

◆ TerminatePhase

Describes the terminate phase.

Enumerator
TP_REGION_PREDETECTED 

Exits the barcode reading algorithm after the region predetection is done.

TP_IMAGE_PREPROCESSED 

Exits the barcode reading algorithm after the region predetection and image pre-processing is done.

TP_IMAGE_BINARIZED 

Exits the barcode reading algorithm after the region predetection, image pre-processing, and image binarization are done.

TP_BARCODE_LOCALIZED 

Exits the barcode reading algorithm after the region predetection, image pre-processing, image binarization, and barcode localization are done.

TP_BARCODE_TYPE_DETERMINED 

Exits the barcode reading algorithm after the region predetection, image pre-processing, image binarization, barcode localization, and barcode type determining are done.

TP_BARCODE_RECOGNIZED 

Exits the barcode reading algorithm after the region predetection, image pre-processing, image binarization, barcode localization, barcode type determining, and barcode recognition are done.

◆ TextAssistedCorrectionMode

Describes the text assisted correction mode.

Enumerator
TACM_AUTO 

Not supported yet.

TACM_VERIFYING 

Uses the accompanying text to verify the decoded barcode result. Check Arguments of TextAssistedCorrectionMode for available argument settings.

TACM_VERIFYING_PATCHING 

Uses the accompanying text to verify and patch the decoded barcode result. Check Arguments of TextAssistedCorrectionMode for available argument settings.

TACM_SKIP 

Skips the text assisted correction.

◆ TextFilterMode

Describes the text filter mode.

Enumerator
TFM_AUTO 

Not supported yet.

TFM_GENERAL_CONTOUR 

Filters text using the general algorithm based on contour. Check Arguments of TextFilterModes for available argument settings.

TFM_SKIP 

Skips text filtering.

◆ TextResultOrderMode

Describes the text result order mode.

Enumerator
TROM_CONFIDENCE 

Returns the text results in descending order by confidence.

TROM_POSITION 

Returns the text results in position order, from top to bottom, then left to right

TROM_FORMAT 

Returns the text results in alphabetical and numerical order by barcode format string.

TROM_SKIP 

Skips the result ordering operation.

◆ TextureDetectionMode

Describes the texture detection mode.

Enumerator
TDM_AUTO 

Not supported yet.

TDM_GENERAL_WIDTH_CONCENTRATION 

Detects texture using the general algorithm. Check Arguments of TextureDetectionModes for available argument settings.

TDM_SKIP 

Skips texture detection.