Barcode (CVCBarcode.dll) 14.1
Two-dimensional Barcode

Functions

void CvcBcGetDataMatrixEx (CVC_BC_CONFIG config, unsigned short *dm_types, unsigned short *dm_formats, short *min_size, short *max_size, BOOL *rectangular, BOOL *mirror, BOOL *invers, BOOL *distorted, short *dm_ex_types, short *bar1, short *bar2, short *bar3, short *bar4, short *bar5, short *bar6, short *bar7, short *bar8, short *threshold, BOOL *expanded, short *contrast_min, short *modulwidth, short *quietzone)
 This function reads all the parameters for decoding the two-dimensional Data Matrix for the specified configuration. More...
 
void CvcBcGetMicroPDF417 (CVC_BC_CONFIG config, BOOL *active, short *direction, BOOL *mirror, BOOL *invers, BOOL *quiet_zone)
 This function reads all parameters for decoding the MicroPDF 417 for the specified configuration. More...
 
void CvcBcGetPDF417 (CVC_BC_CONFIG config, unsigned short *pdf_levels, short *min_rows, short *max_rows, short *min_columns, short *max_columns, BOOL *mirror, BOOL *invers)
 This function reads all the parameters for decoding the PDF 417 for the specified configuration. More...
 
void CvcBcGetQRCode (CVC_BC_CONFIG config, BOOL *active, BOOL *mirror, BOOL *invers, BOOL *quiet_zone, BOOL *active_versionM1ToM4, short *minofversionsM1ToM4, short *maxofversionsM1ToM4, BOOL *active_version1To40, short *minofversions1To40, short *maxofversions1To40)
 This function reads all parameters for decoding the QR Code from the specified configuration. More...
 
void CvcBcGetRSS (CVC_BC_CONFIG config, BOOL *active, BOOL *invers, BOOL *mirror, short *types, short *composite, short *direction)
 This function reads all parameters for decoding the RSS code for the specified configuration. More...
 
short CvcBcSetDataMatrixEx (CVC_BC_CONFIG config, unsigned short dm_types, unsigned short dm_formats, short min_size, short max_size, BOOL rectangular, BOOL mirror, BOOL invers, BOOL distorted, short dm_ex_types, short bar1, short bar2, short bar3, short bar4, short bar5, short bar6, short bar7, short bar8, short threshold, BOOL expanded, short contrast_min, short modulwidth, short quietzone)
 This function sets all the parameters for decoding the two-dimensional Data Matrix code with distinguish evaluation properties. More...
 
short CvcBcSetMicroPDF417 (CVC_BC_CONFIG config, BOOL active, short direction, BOOL mirror, BOOL invers, BOOL quiet_zone)
 This function sets all the parameters for the decoding of the two-dimensional MicroPDF 417 barcode. More...
 
short CvcBcSetPDF417 (CVC_BC_CONFIG config, unsigned short pdf_levels, short min_rows, short max_rows, short min_columns, short max_columns, BOOL mirror, BOOL invers)
 This function sets all the parameters for the decoding of the two-dimensional PDF 417 barcode. More...
 
short CvcBcSetQRCode (CVC_BC_CONFIG config, BOOL active, BOOL mirror, BOOL invers, BOOL quiet_zone, BOOL active_versionM1ToM4, short minofversionsM1ToM4, short maxofversionsM1ToM4, BOOL active_version1To40, short minofversions1To40, short maxofversions1To40)
 This function sets all parameters for decoding the QR Code. More...
 
short CvcBcSetRSS (CVC_BC_CONFIG config, BOOL active, BOOL invers, BOOL mirror, short types, short composite, short direction)
 This function sets the parameters for decoding two-dimensional Data Matrix RSS barcode. More...
 

Detailed Description

Function Documentation

◆ CvcBcGetDataMatrixEx()

void CvcBcGetDataMatrixEx ( CVC_BC_CONFIG  config,
unsigned short *  dm_types,
unsigned short *  dm_formats,
short *  min_size,
short *  max_size,
BOOL *  rectangular,
BOOL *  mirror,
BOOL *  invers,
BOOL *  distorted,
short *  dm_ex_types,
short *  bar1,
short *  bar2,
short *  bar3,
short *  bar4,
short *  bar5,
short *  bar6,
short *  bar7,
short *  bar8,
short *  threshold,
BOOL *  expanded,
short *  contrast_min,
short *  modulwidth,
short *  quietzone 
)

This function reads all the parameters for decoding the two-dimensional Data Matrix for the specified configuration.

The config parameter is the handle to the configuration from which the data is to be read. If config = NULL, the data is read from the default configuration.

All other parameters are pointers to variables in which the corresponding information is to be stored. The description of the parameters is specified in the associated CvcBcSetDataMatrixEx function.

Note
The function is new in CVB 8.0 with Barcode Version 2.2.
Parameters
[in]configHandle to the configuration or NULL to use the default configuration.
[out]dm_typesBit field which specifies the permitted error correction level (ECCs).
[out]dm_formatsBit field which specifies the permitted coding schemes (also known as format IDs) (only for ECC 000 to ECC 140).
[out]min_sizeMinimum number of lines and columns.
[out]max_sizeMaximum number of lines and columns.
[out]rectangularPermit/do not permit rectangular Data Matrix.
[out]mirrorCode is mirrored/not mirrored.
[out]inversCode is inverted (white on black)/not inverted.
[out]distortedCode is distorted (no effect with dotted Data Matrix).
[out]dm_ex_typesDistinguish between evaluate characteristics of the Data Matrix code (Data Matrix, 2D Pharmacode and dotted Data Matrix).
[out]bar1Proving colour bar of field 1 around the code (only for 2D Pharmacode).
[out]bar2Proving colour bar of field 2 around the code (only for 2D Pharmacode).
[out]bar3Proving colour bar of field 3 around the code (only for 2D Pharmacode).
[out]bar4Proving colour bar of field 4 around the code (only for 2D Pharmacode).
[out]bar5Proving colour bar of field 5 around the code (only for 2D Pharmacode).
[out]bar6Proving colour bar of field 6 around the code (only for 2D Pharmacode).
[out]bar7Proving colour bar of field 7 around the code (only for 2D Pharmacode).
[out]bar8Proving colour bar of field 8 around the code (only for 2D Pharmacode).
[out]thresholdMinimum digitalisation threshold of the colour bars in % (only for 2D Pharmacode) ranging from 0 to 100.
[out]expandedSpecifies whether the code is expanded or not(only for 2D Pharmacode).
[out]contrast_minMinimal contrast value of the code (only dotted Data Matrix).
[out]modulwidthModulwidth of the code (only dotted Data Matrix).
[out]quietzoneQuiet zone around the code (only dotted Data Matrix).
Supported platforms:
Win32
Win64
Related Topics:
Data Matrix specification
CvcBcSetDataMatrixEx
CvcBcTeachDottedDataMatrix

◆ CvcBcGetMicroPDF417()

void CvcBcGetMicroPDF417 ( CVC_BC_CONFIG  config,
BOOL *  active,
short *  direction,
BOOL *  mirror,
BOOL *  invers,
BOOL *  quiet_zone 
)

This function reads all parameters for decoding the MicroPDF 417 for the specified configuration.

The config parameter is the handle to the configuration from which the data is to be read. If config = NULL, the data is read from the default configuration.

All other parameters are pointers to variables in which the corresponding information is to be stored. The description of the parameters is specified in the associated CvcBcSetMicroPDF417 function.

Parameters
[in]configHandle to the configuration from which the data is to be read or NULL to use the default configuration.
[out]activeEvaluate / don't evaluate evaluate code.
[out]directionOptimal readout direction of the code.

The parameter direction set the direction in which the MicroPDF 417 is in the picture. There are three directions possible:
CVC_BC_FENCE, CVC_BC_LADDER, and CVC_BC_BOTH (The MicroPDF 417 may be present in either vertical or horizontal orientation, but not in an angle of rotation of 45 degrees).
The option CVC_BC_OMNI is not available.
[out]mirrorCode is mirrored/not mirrored. Because it was mirrored on image acquisition.
[out]inversCode is inverted (white on black)/not inverted.
[out]quiet_zoneCheck/ignore quiet zone.
Supported platforms:
Win32
Win64
Related Topics:
Micro PDF417 details
CvcBcSetMicroPDF417

◆ CvcBcGetPDF417()

void CvcBcGetPDF417 ( CVC_BC_CONFIG  config,
unsigned short *  pdf_levels,
short *  min_rows,
short *  max_rows,
short *  min_columns,
short *  max_columns,
BOOL *  mirror,
BOOL *  invers 
)

This function reads all the parameters for decoding the PDF 417 for the specified configuration.

The config parameter is the handle to the configuration from which the data is to be read. If config = NULL, the data is read from the default configuration.

All other parameters are pointers to variables in which the corresponding information is to be stored. The description of the parameters is specified in the associated CvcBcSetPDF417 function.

Parameters
[in]configHandle to the configuration which is to be written
from the file or NULL to use the default configuration.
[in]pdf_levelsBit field which specifies the permitted error correction level.
[in]min_rowsMinimum number of data rows.
[in]max_rowsMaximum number of data rows.
[in]min_columnsMinimum number of data columns.
[in]max_columnsMinimum number of data columns.
[in]mirrorCode is mirrored/not mirrored.
[in]inversCode is inverted (white on black)/not inverted.
Supported platforms:
Win32
Win64
Related Topics:
PDF 417 specification
CvcBcSetPDF417

◆ CvcBcGetQRCode()

void CvcBcGetQRCode ( CVC_BC_CONFIG  config,
BOOL *  active,
BOOL *  mirror,
BOOL *  invers,
BOOL *  quiet_zone,
BOOL *  active_versionM1ToM4,
short *  minofversionsM1ToM4,
short *  maxofversionsM1ToM4,
BOOL *  active_version1To40,
short *  minofversions1To40,
short *  maxofversions1To40 
)

This function reads all parameters for decoding the QR Code from the specified configuration.

The config parameter is the handle to the configuration from which the data is to be read. If config = NULL, the data is read from the default configuration.

All other parameters are pointers to variables in which the corresponding information is to be stored. The description of the parameters is specified in the associated CvcBcSetQRCode function.

Parameters
[in]configHandle to the configuration from which the data is to be read or NULL to use the default configuration.
[out]activeEvaluate / don't evaluate evaluate code (default CVC_BC_ON).
[out]mirrorCode is mirrored/not mirrored.
[out]inversCode is inverted (white on black)/not inverted.
[out]quiet_zoneCheck/ignore quiet zone.

The parameter quiet_zone activates or deactivates checking for the presence of quiet zones. If you specify TRUE, a check is performed for the presence of quiet zones; if you specify FALSE, no check is performed.
[out]active_versionM1ToM4Mini-QR-code is used/not used.
[out]minofversionsM1ToM4Limiting values for Mini-QR-code ranging from 1 to 4. The default value is 1 (min) to 4 (max) to decode all Mini-QR-Code-versions.
[out]maxofversionsM1ToM4Limiting values for Mini-QR-code ranging from 1 to 4. The default value is 1(min) to 4 (max) to decode all Mini-QR-Code-versions.
[out]active_version1To40Standard-QR-code is used/not used.
[out]minofversions1To40Limiting values for standard-QR-code ranging from 1 to 40. The default value is 1 (min) to 40 (max) to decode all standard-QR-Code-versions.
[out]maxofversions1To40Limiting values for standard-QR-code ranging from 1 to 40. The default value is 1 (min) to 40 (max) to decode all standard-QR-Code-versions.
Supported platforms:
Win32
Win64
Related Topics:
CvcBcSetQRCode

◆ CvcBcGetRSS()

void CvcBcGetRSS ( CVC_BC_CONFIG  config,
BOOL *  active,
BOOL *  invers,
BOOL *  mirror,
short *  types,
short *  composite,
short *  direction 
)

This function reads all parameters for decoding the RSS code for the specified configuration.

The config parameter is the handle to the configuration from which the data is to be read. If config = NULL, the data is read from the default configuration.

All other parameters are pointers to variables in which the corresponding information is to be stored. The description of the parameters is specified in the associated CvcBcSetRSS function.

Parameters
[in]configHandle to the configuration or NULL to use the default configuration.
[out]activeEvaluate / don't evaluate evaluate code (default CVC_BC_ON).
[out]inversCode is inverted (white on black)/not inverted.
[out]mirrorCode is mirrored/not mirrored.
[out]typesBit field which specifies the permitted RSS types.
[out]compositeBit field which specifies the permitted RSS composite components.
[out]directionSelects the possible orientations in which the RSS code may occur.
Supported platforms:
Win32
Win64
Related Topics:
CvcBcSetRSS

◆ CvcBcSetDataMatrixEx()

short CvcBcSetDataMatrixEx ( CVC_BC_CONFIG  config,
unsigned short  dm_types,
unsigned short  dm_formats,
short  min_size,
short  max_size,
BOOL  rectangular,
BOOL  mirror,
BOOL  invers,
BOOL  distorted,
short  dm_ex_types,
short  bar1,
short  bar2,
short  bar3,
short  bar4,
short  bar5,
short  bar6,
short  bar7,
short  bar8,
short  threshold,
BOOL  expanded,
short  contrast_min,
short  modulwidth,
short  quietzone 
)

This function sets all the parameters for decoding the two-dimensional Data Matrix code with distinguish evaluation properties.

If the function CvcBcDecodeBarcode recognises a Data Matrix, the num_digits element in the CVC_BC_INFO structure is set as the product of the width and the height of the code.

Note
The function is new in CVB 8.0 with Barcode Version 2.2.
Attention
Use following barcode only with expanded 2D Pharmacode:
2D Pharmacode 2D Pharmacode

The parameters bar1 to bar8 are to adjust the proofing of the colour bars field 1 to field 8 with a quadratic 2D Pharmacode and field 1 to field 6 with a rectangular codes.

For each colour bar following settings are possible:
CVC_BC_DONT_CARE if the bar don't care,
CVC_BC_PRESENT if the field must be present,
or CVC_BC_MISS if the filed must not be present.

If a rectangular 2D Pharmacode is read, field 7 (bar7) and field 8 (bar8) should be set to CVC_BC_DONT_CARE.

The default values for bar1 to bar8 are::CVC_BC_PRESENT.

Parameters
[in]configHandle to the configuration or NULL to use the default configuration.

The config parameter is the handle to the configuration which is to be modified. Any
modifications apply to this configuration only.
[in]dm_typesBit field which specifies the permitted error correction level (ECCs).

The dm_types parameter has two functions. On the one hand you can specify the constant CVC_BC_DM_DISABLE to disable decoding of the code for the specified configuration and specify CVC_BC_DM_ALL_LEVELS to enable decoding. On the other, you can use a bitwise OR combination of the constants CVC_BC_DM_ECC0, CVC_BC_DM_ECC50, CVC_BC_DM_ECC80, CVC_BC_DM_ECC100, CVC_BC_DM_ECC140 and CVC_BC_DM_ECC200 to permit any required combination of the possible error correction level for decoding.

Attention: Only use with dotted Data Matrix: CVC_BC_DM_EX_DOTTED_DATAMATRIX
Select dotted Data Matrix to read Data Matrix codes which have not the pretended specification of printing tolerance. The dotted Data Matrix is not a own type and it is handled as a Data Matrix by the issue of the result.

If dotted Data Matrix is selected, codes with laser, ink-jet or punched can be read. Therefore, it is necessary to adjust the parameters num_rows, num_columns, modulwidth and contrast_min or
to teach in these parameters with the function CvcBcTeachDottedDataMatrix.

Don't use this adjustment if you want read normally printed Data Matrix codes. It requires a much longer time to read the code and as well the parameter num_rows and num_columns limited the codes to be read.
[in]dm_formatsBit field which specifies the permitted coding schemes (also known as format IDs) (only for ECC 000 to ECC 140).

You use the dm_formats parameter to restrict the evaluation of a Data Matrix of types ECC 0 to ECC 140 to certain coding schemes (also known as encoding schemes or format IDS). To this end, the constants CVC_BC_DM_BASE11 (format ID 1), CVC_BC_DM_BASE27 (format ID 2), CVC_BC_DM_BASE37 (format ID 4), CVC_BC_DM_BASE41 (format ID 3), CVC_BC_DM_ASCII (format ID 5) and CVC_BC_DM_BINARY (format ID 6) are defined. These constants can be combined in any way using a bitwise OR operator. If you want to permit all formats, you can specify the constant CVC_BC_DM_ALL_FORMATS. In the case of an ECC 200 Data Matrix, this parameter is not used.
[in]min_sizeMinimum number of lines and columns.

You can use the min_size and max_size parameters to restrict Data Matrix evaluation to certain sizes. The sizes then refer to the number of modules or cells; peripheral structures are counted but quiet zones are not. If you want to permit all sizes, you can pass the constants CVC_BC_DM_MIN_SIZE or CVC_BC_DM_MAX_SIZE.
[in]max_sizeMaximum number of lines and columns.

You can use the min_size and max_size parameters to restrict Data Matrix evaluation to certain sizes. The sizes then refer to the number of modules or cells; peripheral structures are counted but quiet zones are not. If you want to permit all sizes, you can pass the constants CVC_BC_DM_MIN_SIZE or CVC_BC_DM_MAX_SIZE.
[in]rectangularPermit/do not permit rectangular Data Matrix.

If this parameter is TRUE specifies that rectangular codes are permitted for evaluation.
Attention:Rectangular codes are defined for ECC 200 only.
[in]mirrorCode is mirrored/not mirrored.

TRUE means that the Data Matrix is mirrored, possibly because the code must be read from the rear or because it was mirrored on image acquisition.
[in]inversCode is inverted (white on black)/not inverted.

TRUE means that the Data Matrix is present as a white on black image. Normally barcodes are printed black on a white background. However, if the code is printed using a different procedure, it may appear inverted on dark field scanning. In this case you must set invers = TRUE.
[in]distortedCode is distorted (no effect with dotted Data Matrix).

The parameter distorted is for Data Matrix codes which are curved. This parameter has no effect if the dm_ex_types is CVC_BC_DM_EX_DOTTED_DATAMATRIX.
[in]dm_ex_typesDistinguish between evaluate characteristics of the Data Matrix code (Data Matrix, 2D Pharmacode and dotted Data Matrix).

Possible values are: CVC_BC_DM_EX_DATAMATRIX, CVC_BC_DM_EX_2D_PHARMACODE, and CVC_BC_DM_EX_DOTTED_DATAMATRIX
[in]bar1Adjusts the proofing of the colour bar of field 1 using a quadratic or rectangular 2D Pharmacode.
Following values are possible: CVC_BC_DONT_CARE, CVC_BC_PRESENT, or CVC_BC_MISS.
[in]bar2Adjusts the proofing of the colour bar of field 2 using a quadratic or rectangular 2D Pharmacode.
Following values are possible: CVC_BC_DONT_CARE, CVC_BC_PRESENT, or CVC_BC_MISS.
[in]bar3Adjusts the proofing of the colour bar of field 3 using a quadratic or rectangular 2D Pharmacode.
Following values are possible: CVC_BC_DONT_CARE, CVC_BC_PRESENT, or CVC_BC_MISS.
[in]bar4Adjusts the proofing of the colour bar of field 4 using a quadratic or rectangular 2D Pharmacode.
Following values are possible: CVC_BC_DONT_CARE, CVC_BC_PRESENT, or CVC_BC_MISS.
[in]bar5Adjusts the proofing of the colour bar of field 5 using a quadratic or rectangular 2D Pharmacode.
Following values are possible: CVC_BC_DONT_CARE, CVC_BC_PRESENT, or CVC_BC_MISS.
[in]bar6Adjusts the proofing of the colour bar of field 6 using a quadratic or rectangular 2D Pharmacode.
Following values are possible: CVC_BC_DONT_CARE, CVC_BC_PRESENT, or CVC_BC_MISS.
[in]bar7Adjusts the proofing of the colour bar of field 7 using a quadratic or rectangular 2D Pharmacode.
Following values are possible: CVC_BC_DONT_CARE, CVC_BC_PRESENT, or CVC_BC_MISS.
Attention: This bar isn't used if a rectangular 2D Pharmacode is read. Thus, set the value to CVC_BC_DONT_CARE.
[in]bar8Adjusts the proofing of the colour bar of field 8 using a quadratic or rectangular 2D Pharmacode.
Following values are possible: CVC_BC_DONT_CARE, CVC_BC_PRESENT, or CVC_BC_MISS.
Attention: This bar isn't used if a rectangular 2D Pharmacode is read. Thus, set the value to CVC_BC_DONT_CARE.
[in]thresholdMinimum digitalisation threshold of the colour bars in % (only for 2D Pharmacode) ranging from 0 to 100. The default value is 35.
[in]expandedSpecifies whether the code is expanded or not(only for 2D Pharmacode).

The parameter expanded permits a larger tolerance of the colour bars of the 2D Pharmacode (default FALSE).
[in]contrast_minMinimal contrast value of the code (only dotted Data Matrix).

The parameter contrast_min is a scale for the minimal contrast that must be to find and read the dotted Data Matrix code in the picture. How inferior the contrast is, the lower the value contrast_min have to be set to read the code. Normally the value is in the range of 30 to 40 default is 30).
[in]modulwidthModulwidth of the code (only dotted Data Matrix).

The modulwidth is the count of pixel*10 of the modulwidth of one module, it can be calculated with:
modulwidth = whole code width in pixel (without quiet zone) / number of modules*10 (default 50).
[in]quietzoneQuiet zone around the code (only dotted Data Matrix).

The quietzone is the quiet zone around the Code in modulwidths, normally it is set to 5 modulwidths. Only if it is absolute necessary it can set down finally to 3 to read a code with a very short quiet zone (default 5).
Returns
CVC_BC_NO_ERROR on success, otherwise CVC_BC_PARAMETER_WARNING.
Supported platforms:
Win32
Win64
Related Topics:
Data Matrix specification
CvcBcGetDataMatrixEx
CvcBcTeachDottedDataMatrix
Parameters in info-structure CVC_BC_INFO

◆ CvcBcSetMicroPDF417()

short CvcBcSetMicroPDF417 ( CVC_BC_CONFIG  config,
BOOL  active,
short  direction,
BOOL  mirror,
BOOL  invers,
BOOL  quiet_zone 
)

This function sets all the parameters for the decoding of the two-dimensional MicroPDF 417 barcode.

Parameters
[in]configHandle to the configuration from which the data is to be read or NULL to use the default configuration.
[in]activeEvaluate / don't evaluate evaluate code.

The parameter active enables and disables the decoding of the code configuration config. Specifying TRUE enables and FALSE disables decoding.
[in]directionSpecifies the orientation of the code in the image.

The parameter direction set the direction in which the MicroPDF 417 is in the picture. There are three directions possible:
CVC_BC_FENCE, CVC_BC_LADDER, and CVC_BC_BOTH (The MicroPDF 417 may be present in either vertical or horizontal orientation, but not in an angle of rotation of 45 degrees).
The option CVC_BC_OMNI is not available.
[in]mirrorCode is mirrored/not mirrored.

The parameter mirror = TRUE specifies that the MicroPDF 417 is mirrored, possibly because the code must be read from the rear or because it was mirrored on image acquisition.
[in]inversCode is inverted (white on black)/not inverted.

TRUE specifies whether the barcode is present as a black on white image (invers = FALSE) or a white on black image (invers = TRUE). Normally barcodes are printed dark on a bright background in which case the value FALSE is passed. Under certain circumstances, the contrast ratio may be inverted. In such cases, you pass the value TRUE.
[in]quiet_zoneCheck/ignore quiet zone.

The parameter quiet_zone activates or deactivates checking for the presence of quiet zones. If you specify TRUE, a check is performed for the presence of quiet zones; if you specify FALSE, no check is performed.
Returns
CVC_BC_NO_ERROR on success, otherwise CVC_BC_PARAMETER_WARNING.
Supported platforms:
Win32
Win64
Related Topics:
Micro PDF417 details
CvcBcGetMicroPDF417

◆ CvcBcSetPDF417()

short CvcBcSetPDF417 ( CVC_BC_CONFIG  config,
unsigned short  pdf_levels,
short  min_rows,
short  max_rows,
short  min_columns,
short  max_columns,
BOOL  mirror,
BOOL  invers 
)

This function sets all the parameters for the decoding of the two-dimensional PDF 417 barcode.

If the function CvcBcDecodeBarcode recognises a Data Matrix, the num_digits element in the CVC_BC_INFO structure is set as the product of the width and the height of the code.

Parameters
[in]configHandle to the configuration which is to be written
from the file or NULL to use the default configuration.

The config parameter is the handle from which the data is to be read. If config = NULL, the data is read from the default configuration.
[in]pdf_levelsBit field which specifies the permitted error correction level.

The pdf_levels parameter has two functions. On the one hand you can specify the constant CVC_BC_PDF417_DISABLE to disable decoding of the code for the specified configuration and specify CVC_BC_PDF417_ALL_LEVELS to enable decoding. On the other, you can use an OR combination of the constants CVC_BC_PDF417_LEVEL0 to CVC_BC_PDF417_LEVEL8 to permit any required combination of the possible error correction level for decoding.
[in]min_rowsMinimum number of data rows.

Use the min_rows and max_rows or min_columns and max_columns parameters to restrict PDF 417 evaluation to certain sizes. Here the number specified for the columns refers to data columns only, i.e., start and stop codes as well left- and right-hand line indicators are not counted.

Normally you can set these parameters to their default value. To this end, CVCBarcode header files contain the constants CVC_BC_PDF417_MIN_ROWS, CVC_BC_PDF417_MAX_ROWS, CVC_BC_PDF417_MIN_COLUMNS, and CVC_BC_PDF417_MAX_COLUMNS.
[in]max_rowsMaximum number of data rows.

Use the min_rows and max_rows or min_columns and max_columns parameters to restrict PDF 417 evaluation to certain sizes. Here the number specified for the columns refers to data columns only, i.e., start and stop codes as well left- and right-hand line indicators are not counted.

Normally you can set these parameters to their default value. To this end, CVCBarcode header files contain the constants CVC_BC_PDF417_MIN_ROWS, CVC_BC_PDF417_MAX_ROWS, CVC_BC_PDF417_MIN_COLUMNS, and CVC_BC_PDF417_MAX_COLUMNS.
[in]min_columnsMinimum number of data columns.

Use the min_rows and max_rows or min_columns and max_columns parameters to restrict PDF 417 evaluation to certain sizes. Here the number specified for the columns refers to data columns only, i.e., start and stop codes as well left- and right-hand line indicators are not counted.

Normally you can set these parameters to their default value. To this end, CVCBarcode header files contain the constants CVC_BC_PDF417_MIN_ROWS, CVC_BC_PDF417_MAX_ROWS, CVC_BC_PDF417_MIN_COLUMNS, and CVC_BC_PDF417_MAX_COLUMNS.
[in]max_columnsMinimum number of data columns.

Use the min_rows and max_rows or min_columns and max_columns parameters to restrict PDF 417 evaluation to certain sizes. Here the number specified for the columns refers to data columns only, i.e., start and stop codes as well left- and right-hand line indicators are not counted.

Normally you can set these parameters to their default value. To this end, CVCBarcode header files contain the constants CVC_BC_PDF417_MIN_ROWS, CVC_BC_PDF417_MAX_ROWS, CVC_BC_PDF417_MIN_COLUMNS, and CVC_BC_PDF417_MAX_COLUMNS.
[in]mirrorCode is mirrored/not mirrored.

TRUE means that the PDF 417 is mirrored, possibly because the code must be read from the rear or because it was mirrored on image acquisition.
[in]inversCode is inverted (white on black)/not inverted.

TRUE means that the PDF 417 is present as a white on black image. Normally barcodes are printed black on a white background. However, if the code is printed using a different procedure, it may appear inverted on dark field scanning. In this case you must set invers = TRUE.
Returns
CVC_BC_NO_ERROR on success, otherwise CVC_BC_PARAMETER_WARNING.
Supported platforms:
Win32
Win64
Related Topics:
PDF 417 specification
Parameters in info-structure CVC_BC_INFO
CvcBcGetPDF417

◆ CvcBcSetQRCode()

short CvcBcSetQRCode ( CVC_BC_CONFIG  config,
BOOL  active,
BOOL  mirror,
BOOL  invers,
BOOL  quiet_zone,
BOOL  active_versionM1ToM4,
short  minofversionsM1ToM4,
short  maxofversionsM1ToM4,
BOOL  active_version1To40,
short  minofversions1To40,
short  maxofversions1To40 
)

This function sets all parameters for decoding the QR Code.

If the function CvcBcDecodeBarcode recognises a Data Matrix, the QR result parameter in the CVC_BC_INFO structure contain informations and results.

Parameters
[in]configHandle to the configuration from which the data is to be read or NULL to use the default configuration.
[in]activeEvaluate / don't evaluate evaluate code (default CVC_BC_ON).

The parameter active enables and disables the decoding of the code configuration config. Specifying TRUE enables and FALSE disables decoding.
[in]mirrorCode is mirrored/not mirrored.

The parameter mirror = TRUE specifies that the RSS code is mirrored, possibly because the code must be read from the rear or because it was mirrored on image acquisition.
[in]inversCode is inverted (white on black)/not inverted.

TRUE specifies whether the barcode is present as a black on white image (invers = FALSE) or a white on black image (invers = TRUE). Normally barcodes are printed dark on a bright background in which case the value FALSE is passed. Under certain circumstances, the contrast ratio may be inverted. In such cases, you pass the value TRUE.
[in]quiet_zoneCheck/ignore quiet zone.

The parameter quiet_zone activates or deactivates checking for the presence of quiet zones. If you specify TRUE, a check is performed for the presence of quiet zones; if you specify FALSE, no check is performed.
[in]active_versionM1ToM4Mini-QR-code is used/not used.

The parameters active_versionM1ToM4 and active_version1To40 activate the Mini-QR-Code (types M1 to M4) and respectively the standard-QR-Code (version 1 to version 40).
[in]minofversionsM1ToM4Limiting values for Mini-QR-code ranging from 1 to 4. The default value is 1(min) to 4 (max) to decode all Mini-QR-Code-versions.

The parameter for the limiting values minofversionsM1ToM4 and maxofversionsM1ToM4 respectively minofversions1To40 and maxofversions1To40 are used to limit the supported versions.
If all values types should be decoded the values are 1 and 4 respectively 1 and 40.
[in]maxofversionsM1ToM4Limiting values for Mini-QR-code ranging from 1 to 4. The default value is 1(min) to 4 (max) to decode all Mini-QR-Code-versions.

The parameter for the limiting values minofversionsM1ToM4 and maxofversionsM1ToM4 respectively minofversions1To40 and maxofversions1To40 are used to limit the supported versions.
If all values types should be decoded the values are 1 and 4 respectively 1 and 40.
[in]active_version1To40Standard-QR-code is used/not used.

The parameters active_versionM1ToM4 and active_version1To40 activate the Mini-QR-Code (types M1 to M4) and respectively the standard-QR-Code (version 1 to version 40).
[in]minofversions1To40Limiting values for standard-QR-code ranging from 1 to 40. The default value is 1(min) to 40 (max) to decode all standard-QR-Code-versions.

The parameter for the limiting values minofversionsM1ToM4 and maxofversionsM1ToM4 respectively minofversions1To40 and maxofversions1To40 are used to limit the supported versions.
If all values types should be decoded the values are 1 and 4 respectively 1 and 40.
[in]maxofversions1To40Limiting values for standard-QR-code ranging from 1 to 40. The default value is 1(min) to 40 (max) to decode all standard-QR-Code-versions.

The parameter for the limiting values minofversionsM1ToM4 and maxofversionsM1ToM4 respectively minofversions1To40 and maxofversions1To40 are used to limit the supported versions.
If all values types should be decoded the values are 1 and 4 respectively 1 and 40.
Returns
CVC_BC_NO_ERROR on success, otherwise CVC_BC_PARAMETER_WARNING.
Supported platforms:
Win32
Win64
Related Topics:
Overview 2D barcodes - QR Code
CVC_BC_INFO
CvcBcGetQRCode

◆ CvcBcSetRSS()

short CvcBcSetRSS ( CVC_BC_CONFIG  config,
BOOL  active,
BOOL  invers,
BOOL  mirror,
short  types,
short  composite,
short  direction 
)

This function sets the parameters for decoding two-dimensional Data Matrix RSS barcode.

RSS code is not a single code, it is a family of codes, basically consisting of a 1D barcode with an optional 2D composite component. With CVC Barcode it is only possible to read RSS codes in horizontal or vertical orientation. Omni-directional reading - though possible for some RSS types - is not supported. Hence the adjustment CVC_BC_DIRECTION in the CvcBcDecodeBarcode function has no effect on RSS code. The RSS have its own direction which you can set with the parameter direction.

Sets all parameters for decoding the RSS code.

The flags of the parameter composite can be combined in following ways:

Setting of the composite parameter Bit mask RSS Code without CC RSS Code with CC A RSS with CC A, the CC A component is unreadable RSS Code with CC B RSS with CC B RSS with CC B, the CC B component is unreadable
CVC_BC_RSS_ALL_COMPOSITE_FLAGS_OFF 0 RSS only RSS only RSS only RSS only RSS
CVC_BC_RSS_COMPOSITE_NONE 1 RSS noread noread noread noread
CVC_BC_RSS_COMPOSITE_CCA 2 noread RSS+CC A noread noread noread

CVC_BC_RSS_COMPOSITE_NONE&

CVC_BC_RSS_COMPOSITE_CCA

3 RSS RSS+CC A noread noread noread
CVC_BC_RSS_COMPOSITE_CCB 4 noread   noread RSS+CC B noread
CVC_BC_RSS_COMPOSITE_NONE &CVC_BC_RSS_COMPOSITE_CCB 5 RSS   noread RSS+CC B noread
CVC_BC_RSS_COMPOSITE_CCA & CVC_BC_RSS_COMPOSITE_CCB 6 noread RSS+CC A noread RSS+CC B noread
CVC_BC_RSS_ALL_COMPOSITE_FLAGS_ON 7 RSS RSS+CC A noread RSS+CC B noread

Special results for the RSS Codes by the outputs in CVC_BC_INFO.

The fnc flags fnc4, fnc3, and fnc2 are used to show some information about the decoded RSS code in the CVC_BC_INFO.
The fnc4 is used to indicate if the RSS Code has a 2D composite component or not. If fnc4 = 1 then the RSS Code has a 2D composite component. If fnc4 = 0 the RSS code has no 2D composite component.
The fnc3 indicates the subtype of the RSS code.
fnc3 = 1: Subtype RSS14
fnc3 = 2: Subtype RSS14 Truncated
fnc3 = 4: Subtype RSS14 Stacked
fnc3 = 8: Subtype RSS14 Stacked Omni-directional
fnc3 = 16: Subtype RSS14 Limited
The fnc2 indicates the composite type of the 2D composite component. It is only set if the RSS code has a 2D composite component (fnc4 = 1).
fnc2 = 2: CC-A Component
fnc2 = 4 CC-B Component
If fnc2 has an other value than 2 or 4 Not Identified Component
Decoding result if the 2D component is not the expected 2D component.
If the 2D composite component of the RSS Code is a CC-A but a CC-B type is expected or the 2D composite component of the RSS Code is a CC-B and a CC-A is expected the value decoding_result in the CVC_BC_INFO is set to CVC_BC_COLOR_NOT_CORRECT to show this.

Surrounding rectangle of the RSS code.
The four edge points of the RSS code are calculated. If the RSS code has a 2D composite component and the decode of the 2D composite component is active the rectangle will enclose the 2D composite component, too.

Transmitted data
The transmitted data do not use the symbology identifier (AIM Inc. ITS/99-001).

Parameters
[in]configHandle to the configuration or NULL to use the default configuration.
[in]activeEvaluate / don't evaluate evaluate code (default CVC_BC_ON).

The parameter active enables and disables the decoding of the code configuration config. Specifying TRUE enables and FALSE disables decoding.
[in]inversCode is inverted (white on black)/not inverted.

TRUE specifies whether the barcode is present as a black on white image (invers = FALSE) or a white on black image (invers = TRUE). Normally barcodes are printed dark on a bright background in which case the value FALSE is passed. Under certain circumstances, the contrast ratio may be inverted. In such cases, you pass the value TRUE.
[in]mirrorCode is mirrored/not mirrored.

The parameter mirror = TRUE specifies that the RSS code is mirrored, possibly because the code must be read from the rear or because it was mirrored on image acquisition. If the RSS code has no composite component this parameter is without influence.
[in]typesBit field which specifies the permitted RSS types.

With the types parameter you can select the different subtypes of the RSS code which shall decoded. Set the parameter types to CVC_BC_RSS_ALL_TYPES to decode all supported RSS subtypes. Furthermore, you can use a bitwise OR combination of the constants CVC_BC_RSS14, CVC_BC_RSS14_TRUNCATED, CVC_BC_RSS14_STACKED, CVC_BC_RSS14_STACKED_OMNIDIRECTIONAL, and CVC_BC_RSS_LIMITED to permit any required combination of the possible subtypes for decoding. The default parameter types is CVC_BC_RSS_ALL_TYPES.
[in]compositeBit field which specifies the permitted RSS composite components.

The composite parameter is a field which specifies the permitted RSS composite components. You can use a bitwise OR combination of the constants CVC_BC_RSS_COMPOSITE_NONE, CVC_BC_RSS_COMPOSITE_CCA, and CVC_BC_RSS_COMPOSITE_CCB to permit any required combination. If no flags shall be used set the parameter composite to CVC_BC_RSS_ALL_COMPOSITE_FLAGS_OFF, and if all flags shall be used you can set the parameter composite to CVC_BC_RSS_ALL_COMPOSITE_FLAGS_ON.
The default parameter composite is CVC_BC_RSS_ALL_COMPOSITE_FLAGS_ON.
[in]directionSelects the possible orientations in which the RSS code may occur.

The parameter direction sets the orientations in which the RSS Code may occur. The direction is from the data type CVC_BC_DIRECTION. Three directions are possible:
CVC_BC_FENCE, CVC_BC_LADDER, or CVC_BC_BOTH. The default parameter direction is CVC_BC_BOTH.
Returns
CVC_BC_NO_ERROR on success, otherwise CVC_BC_PARAMETER_WARNING.
Supported platforms:
Win32
Win64
Related Topics:
RSS code specification
CvcBcGetRSS