BARCODEDATA

typedef struct tagBarCodeData
{
   L_UINT uStructSize;
   L_INT nGroup; 
   L_UINT32 ulType; 
   L_INT nUnits;
   RECT rcBarLocation;
   L_INT nSizeofBarCodeData; 
   L_CHAR L_FAR pszBarCodeData; 
   L_INT nIndexDuplicate; 
   L_INT nTotalCount;

   L_INT nDupCount
} BARCODEDATA, L_FAR * pBARCODEDATA;

This structure contains bar code information.

Member

Description

uStructSize

Size of the BARCODEDATA structure, in bytes, for versioning. Use the sizeof() macro to calculate the value.

nGroup

Specifies whether the barcode symbol is a member of a group of symbols. This member is used for reading PDF417 symbols.

 

ulType

Barcode type. Possible values are :

 

Value

Meaning

 

Linear (1D) barcode symbols:

 

 

BARCODE_1D_EAN_13

[0x00000001] EAN 13 type.

 

BARCODE_1D_EAN_8

[0x00000002] EAN 8 type.

 

BARCODE_1D_UPC_A

[0x00000004] UPC version A type.

 

BARCODE_1D_UPC_E

[0x00000008] UPC version E type.

 

BARCODE_1D_CODE_3_OF_9

[0x00000010] Code 3 of 9 (Code 39) type.

 

BARCODE_1D_CODE_128

[0x00000020] Code 128 type.

 

BARCODE_1D_CODE_I2_OF_5

[0x00000040] Interleaved 2 of 5 type.

 

BARCODE_1D_CODA_BAR

[0x00000080] CODABAR type.

 

BARCODE_1D_UCCEAN_128

[0x00000100] UCCEAND 128 type (for read only)

 

BARCODE_1D_CODE_93

[0x00000200] Code 93 type.

 

PDF417 barcode symbol:

 

 

BARCODE_PDF417

[0x00002000] To read PDF417 type.

 

Data Matrix barcode symbol:

 

 

BARCODE_DM_10x10

[0x00000102] Data Matrix Type 10x10.

 

BARCODE_DM_12x12

[0x00000103] Data Matrix Type 12x12.

 

BARCODE_DM_14x14

[0x00000104] Data Matrix Type 14x14.

 

BARCODE_DM_16x16

[0x00000105] Data Matrix Type 16x16.

 

BARCODE_DM_18x18

[0x00000106] Data Matrix Type 18x18.

 

BARCODE_DM_20x20

[0x00000107] Data Matrix Type 20x20.

 

BARCODE_DM_22x22

[0x00000108] Data Matrix Type 22x22.

 

BARCODE_DM_24x24

[0x00000109] Data Matrix Type 24x24.

 

BARCODE_DM_26x26

[0x0000010A] Data Matrix Type 26x26.

 

BARCODE_DM_32x32

[0x0000010B] Data Matrix Type 32x32.

 

BARCODE_DM_36x36

[0x0000010C] Data Matrix Type 36x36.

 

BARCODE_DM_40x40

[0x0000010D] Data Matrix Type 40x40.

 

BARCODE_DM_44x44

[0x0000010E] Data Matrix Type 44x44.

 

BARCODE_DM_48x48

[0x0000010F] Data Matrix Type 48x48.

 

BARCODE_DM_52x52

[0x00000110] Data Matrix Type 52x52.

 

BARCODE_DM_64x64

[0x00000111] Data Matrix Type 64x64.

 

BARCODE_DM_72x72

[0x00000112] Data Matrix Type 72x72.

 

BARCODE_DM_80x80

[0x00000113] Data Matrix Type 80x80.

 

BARCODE_DM_88x88

[0x00000114] Data Matrix Type 88x88.

 

BARCODE_DM_96x96

[0x00000115] Data Matrix Type 96x96.

 

BARCODE_DM_104x104

[0x00000116] Data Matrix Type 104x104.

 

BARCODE_DM_120x120

[0x00000117] Data Matrix Type 120x120.

 

BARCODE_DM_132x132

[0x00000118] Data Matrix Type 132x132.

 

BARCODE_DM_144x144

[0x00000119] Data Matrix Type 144x144.

 

BARCODE_DM_8x18

[0x0000011A] Data Matrix Type 8x18.

 

BARCODE_DM_8x32

[0x0000011B] Data Matrix Type 8x32.

 

BARCODE_DM_12x26

[0x0000011C] Data Matrix Type 12x26.

 

BARCODE_DM_12x36

[0x0000011D] Data Matrix Type 12x36.

 

BARCODE_DM_16x36

[0x0000011E] Data Matrix Type 16x36.

 

BARCODE_DM_16x48

[0x0000011F] Data Matrix Type 16x48.

 

QR barcode symbol:

 

 

BARCODE_QR_DEF

[0x00000300] Default QR Code size

 

BARCODE_QR_M2_1

[0x00000301] QR Code Model 2, Version 1

 

BARCODE_QR_M2_2

[0x00000302] QR Code Model 2, Version 2

 

BARCODE_QR_M2_3

[0x00000303] QR Code Model 2, Version 3

 

BARCODE_QR_M2_4

[0x00000304] QR Code Model 2, Version 4

 

BARCODE_QR_M2_5

[0x00000305] QR Code Model 2, Version 5

 

BARCODE_QR_M2_6

[0x00000306] QR Code Model 2, Version 6

 

BARCODE_QR_M2_7

[0x00000307] QR Code Model 2, Version 7

 

BARCODE_QR_M2_8

[0x00000308] QR Code Model 2, Version 8

 

BARCODE_QR_M2_9

[0x00000309] QR Code Model 2, Version 9

 

BARCODE_QR_M2_10

[0x0000030A] QR Code Model 2, Version 10

 

BARCODE_QR_M2_11

[0x0000030B] QR Code Model 2, Version 11

 

BARCODE_QR_M2_12

[0x0000030C] QR Code Model 2, Version 12

 

BARCODE_QR_M2_13

[0x0000030D] QR Code Model 2, Version 13

 

BARCODE_QR_M2_14

[0x0000030E] QR Code Model 2, Version 14

 

BARCODE_QR_M2_15

[0x0000030F] QR Code Model 2, Version 15

 

BARCODE_QR_M2_16

[0x00000310] QR Code Model 2, Version 16

 

BARCODE_QR_M2_17

[0x00000311] QR Code Model 2, Version 17

 

BARCODE_QR_M2_18

[0x00000312] QR Code Model 2, Version 18

 

BARCODE_QR_M2_19

[0x00000313] QR Code Model 2, Version 19

 

BARCODE_QR_M2_20

[0x00000314] QR Code Model 2, Version 20

 

BARCODE_QR_M2_21

[0x00000315] QR Code Model 2, Version 21

 

BARCODE_QR_M2_22

[0x00000316] QR Code Model 2, Version 22

 

BARCODE_QR_M2_23

[0x00000317] QR Code Model 2, Version 23

 

BARCODE_QR_M2_24

[0x00000318] QR Code Model 2, Version 24

 

BARCODE_QR_M2_25

[0x00000319] QR Code Model 2, Version 25

 

BARCODE_QR_M2_26

[0x0000031A] QR Code Model 2, Version 26

 

BARCODE_QR_M2_27

[0x0000031B] QR Code Model 2, Version 27

 

BARCODE_QR_M2_28

[0x0000031C] QR Code Model 2, Version 28

 

BARCODE_QR_M2_29

[0x0000031D] QR Code Model 2, Version 29

 

BARCODE_QR_M2_30

[0x0000031E] QR Code Model 2, Version 30

 

BARCODE_QR_M2_31

[0x0000031F] QR Code Model 2, Version 31

 

BARCODE_QR_M2_32

[0x00000320] QR Code Model 2, Version 32

 

BARCODE_QR_M2_33

[0x00000321] QR Code Model 2, Version 33

 

BARCODE_QR_M2_34

[0x00000322] QR Code Model 2, Version 34

 

BARCODE_QR_M2_35

[0x00000323] QR Code Model 2, Version 35

 

BARCODE_QR_M2_36

[0x00000324] QR Code Model 2, Version 36

 

BARCODE_QR_M2_37

[0x00000325] QR Code Model 2, Version 37

 

BARCODE_QR_M2_38

[0x00000326] QR Code Model 2, Version 38

 

BARCODE_QR_M2_39

[0x00000327] QR Code Model 2, Version 39

 

BARCODE_QR_M2_40

[0x00000328] QR Code Model 2, Version 40

 

BARCODE_QR_M1_1

[0x00000329] QR Code Model 1, Version 1

 

BARCODE_QR_M1_2

[0x0000032A] QR Code Model 1, Version 2

 

BARCODE_QR_M1_3

[0x0000032B] QR Code Model 1, Version 3

 

BARCODE_QR_M1_4

[0x0000032C] QR Code Model 1, Version 4

 

BARCODE_QR_M1_5

[0x0000032D] QR Code Model 1, Version 5

 

BARCODE_QR_M1_6

[0x0000032E] QR Code Model 1, Version 6

 

BARCODE_QR_M1_7

[0x0000032F] QR Code Model 1, Version 7

 

BARCODE_QR_M1_8

[0x00000330] QR Code Model 1, Version 8

 

BARCODE_QR_M1_9

[0x00000331] QR Code Model 1, Version 9

 

BARCODE_QR_M1_10

[0x00000332] QR Code Model 1, Version 10

 

BARCODE_QR_M1_11

[0x00000333] QR Code Model 1, Version 11

 

BARCODE_QR_M1_12

[0x00000334] QR Code Model 1, Version 12

 

BARCODE_QR_M1_13

[0x00000335] QR Code Model 1, Version 13

 

BARCODE_QR_M1_14

[0x00000336] QR Code Model 1, Version 14

 

BARCODE_QR_M1_DEF

[0x00000337] Default Model 1 QR Code size

 

 

 

nUnits

Unit of measure for the rcBarLocation member. Possible values are:

 

Value

Meaning

 

BARCODE_SCANLINES_PER_PIXELS

[0] the rcBarLocation rectangle is measured in pixels.

 

BARCODE_INCHES

[1] The rcBarLocation rectangle is measured in inches. You must multiply the search area by 100 when using the LBarCode::WriteExt or LBarCode::WriteExt2 function.

 

BARCODE_MILLIMETERS

[2] the rcBarLocation rectangle is measured in mm.

rcBarLocation

The barcode location on the bitmap.

pszBarCodeData

Pointer to the barcode data string.

 

nIndexDuplicate

Index to the next duplicated barcode. This member will be filled only by LBarCode::Read function. Possible values are:

 

Value

Meaning

 

>=0

Next duplicated index.

 

-1

The barcode is not duplicated.

 

0xFF

The barcode is the last duplicated one.

nTotalCount

Total barcode count found by LBarCode::Read function.

nDupCount

Total count of bar codes duplicated for the current bar code. This member is filled by the LBarCode::Read function.

Comments

This structure will be filled by LBarCode::Read when reading in barcode information.

You can also fill this structure before calling LBarCode::WriteExt or LBarCode::WriteExt2  to print the barcode symbol on the bitmap.

Note:

The BARCODE_1D_UCCEAN_128 type is designed for reading UCCEAN 128 barcode only, and it is not designed for writing this barcode type.

The following table contains information for writing linear 1D barcodes:

 

EAN 13

EAN 8

UPC A

UPC E

Code 3 of 9 (Code 39)

CODABAR

Code 128

Code Interleaved 2 of 5

Numerical digits

0-9

0-9

0-9

0-9

0-9

0-9

All ASCII characters

0-9

Alpha char.

N/A

N/A

N/A

N/A

A-Z and space bar

N/A

 

N/A

Special char.

N/A

N/A

N/A

N/A

- . $ % + /

- . $ % + /

 

N/A

Data Length

12

7

11

6 or 11

1-63

1-63

3-63

1-63

Min. width (pixels)

113

80

113

70

(I+4) * 15

N/A

(I + 5) * 11

(I*9)+ 9+ Q

Double width (pixels)

226

170

226

140

(I+4) * 30

N/A

(I + 5) * 22

((I*9)+ 9+ Q) * 2

Triple width (pixels)

339

255

339

210

(I+4) * 45

N/A

(I + 5) * 33

((I*9)+ 9+ Q) * 3

Quad width (pixels)

452

340

452

280

(I+4) * 60

N/A

(I + 5) * 44

((I*9)+ 9+ Q) * 5

Quintuple width (pixels)

N/A

N/A

N/A

N/A

N/A

N/A

 

N/A

FNC1 Char Set A

N/A

N/A

N/A

N/A

N/A

N/A

0x80

N/A

FNC2 Char Set A

N/A

N/A

N/A

N/A

N/A

N/A

0x81

N/A

FNC3 Char Set A

N/A

N/A

N/A

N/A

N/A

N/A

0x82

N/A

FNC4 Char Set A

N/A

N/A

N/A

N/A

N/A

N/A

0x83

N/A

FNC1 Char Set B

N/A

N/A

N/A

N/A

N/A

N/A

0x84

N/A

FNC2 Char Set B

N/A

N/A

N/A

N/A

N/A

N/A

0x85

N/A

FNC3 Char Set B

N/A

N/A

N/A

N/A

N/A

N/A

0x86

N/A

FNC4 Char Set B

N/A

N/A

N/A

N/A

N/A

N/A

0x87

N/A

FNC1 Char Set C

N/A

N/A

N/A

N/A

N/A

N/A

0x88

N/A

Start and Stop Chars

N/A

N/A

N/A

N/A

N/A

abcd

N/A

N/A

For Code 3 of 9 and Code 128:

I = # of characters in the string

Code Interleaved 2 of 5

I = # of digits and must be even.

Q = Quite Zone – 36 elements

The Linear barcodes are not supported in UNICODE.