Barcode Core Engine

The Core Layer is the lower layer of the ConnectCode Barcode Library. It returns a string of Black and White characters in the format "bwwwbwwbbww". The DLL for this layer is ConnectCodeBarcodeCoreLibrary.dll

The DLL exposes a class Barcodes, and the main method for this class is encode(), which will the return a string of black and white characters in the property EncodedData.

Because the results returned is a text string, it is not tied to any graphics engine. Advanced users who require customizations for their projects will be able to use this DLL to create barcodes for thier special needs. For example, if you are writing a laser engraving product that engrave barcodes and requires the barcodes to be returned as a text string, this layer will allow you to do just that.

The Core Layer requires only a small footprint. It uses only the following namespaces in .Net 2.0

using System;
using System.Collections.Generic;
using System.Text;

If you intend to develop a custom control, such as WPF Control, Win CE Control or SmartPhone Class Library, you can leverage on this Core Layer to do most of the work. With this design, you can be assured that your project will be empowered with a huge amount of scalability and flexibility.

Interpreting the output of the Barcode Core Engine

The EncodedData property of the core engine returns a string depending on the barcode type you have selected. ConnectCode classify the barcode types into four categories A , B , C and D.

Type A Barcodes

Code128Auto, Code128A, Code128B, Code128C, Code93, EAN13, EAN8, EXT2, EXT5, ModifiedPlessy, UCCEAN, UPCA, UPCE and Industrial2of5

b - Black Stroke
w - White Stroke

For example, "bbwbwwbbbwwbwbbwwbbbwwbwwbbwwbbbwbbwwwbbbwbwbb" is interpreted as follow

Type B Barcodes

Code39, Code39ASCII, CodeCodabar, I2of5 and ITF14

t - Thin Stroke.
w - Wide Stroke. The Wide Stroke is 3 times the width of the Thin Stroke. The barcode specifications allows the Wide Stroke to be 2-3 times of the Thin Stroke.

The barcode is generated with alternating Black and White Strokes starting with a Black Stroke.

For example, "twttwtwtttwttwttttwtttwwttttwttwttwtwttt" is interpreted as follow

Type C Barcodes


b - Black Stroke
i - Short Black Stroke
s - White Stroke. The White Stroke is 1.3 times the width of the Black Stroke.

For example, "bsisisisbsbsisisbsisbsisisbsbsisisbsisisbsisbsisbsisisbsisbsisb" is interpreted as follow

Type D Barcodes

GS1Databar14, GS1DatabarTruncated, GS1DatabarLimited and GS1DatabarExpanded

A - Black Stroke (Width * 1).
B - Black Stroke (Width * 2).
C - Black Stroke (Width * 3).
D - Black Stroke (Width * 4).
E - Black Stroke (Width * 5).
F - Black Stroke (Width * 6).
G - Black Stroke (Width * 7).
H - Black Stroke (Width * 8).
I - Black Stroke (Width * 9).
a - White Stroke (Width * 1).
b - White Stroke (Width * 2).
c - White Stroke (Width * 3).
d - White Stroke (Width * 4).
e - White Stroke (Width * 5).
f - White Stroke (Width * 6).
g - White Stroke (Width * 7).
h - White Stroke (Width * 8).
i - White Stroke (Width * 9).

For example, "aAaAaAbAhAbGdAaGbAaAaAaAaBdAdAaAaHcBaDcAaAaDaA" is interpreted as follow