OneCode 4-State Customer Barcode
(4-CB) is the next generation in the evolution of USPS barcode technology. It
does not replace existing barcodes - it offers a more effective alternative.
Partnering with the Mailing Industry, the Postal Service developed the 4-CB
which increases the amount of information carried on letter and flats mail
pieces and allows for expanded tracking capability, creating greater visibility
into the mailstream.
4-CB is a height-modulated barcode using four distinct,
vertical bar types. It encodes a 31-digit string into 65 vertical bars each
representing one of four possible states: full bar, ascender, tracker, and
descender.
4-State Barcode Bars
4-CB carries a payload 31 digits comprised of the following
elements.
Type
Field
Digits
Tracking Code
Barcode Identifier
2 (2nd digit must be 0?)
Special Services
3
Customer Identifier
6
Sequence Number
9
Routing Code
Delivery Point ZIP Code
0, 5, 9, or 11
Table 1 - USPS OneCode SOLUTION Barcode Data Fields
For each of the fields in Table 1, except the Routing Code,
leading or trailing zeros shall be provided to achieve the correct size. Spaces
and nulls are not acceptable characters for padding. For ZIP Codes, which have
one of four lengths, encoding shall provide padding beyond the digits to be
encoded. No error detection and correction, such as a checksum with POSTNET or
PLANET, shall be included as part of the data fields. The OneCode Barcode Data
Fields are described as follows:
The Barcode Identifier is assigned by USPS for the type of tracking service.
This is two digits, with the second digit in the range of 0-4
The Special Services is assigned by USPS for any special services on the
mailpiece. The allowable encoding range is 000-999
The Customer Identifier is assigned by USPS as a unique identifier for each
OneCode SOLUTION customer. The allowable encoding range is 000000?99999
The Sequence Number is assigned by the mailer for tracking mailpieces. The
allowable encoding range is 000000000-999999999
The Delivery Point ZIP Code is assigned by the mailer for routing the
mailpiece. This replaces POSTNET for routing the mailpiece to its final
delivery point. The length may be 0, 5, 9, or 11 digits. The allowable encoding
ranges are no ZIP Code, 00000-99999, 000000000-999999999, and
00000000000-99999999999
Copy folder barcode from your downloaded package, to your IIS folder, e.g. C:\Inetpub.
Create a new virtual directory, named barcode.
Restart IIS.
Test your installation, goto http://YourDomain:port/barcode/linear.aspx?Type=ONECODE&Data=12345678
To create barcode image in your ASP.NET application, you can pass the url to IMG tag src value.
For example, <img src="http://YourDomain:port/barcode/linear.aspx?Type=ONECODE&Data=12345678" />
Add Reference BarcodeLib.Barcode.dll to your project. Do not copy the dll to the bin directory, Visual Studio will do so, during project compilation time.
In your .NET windows project, right click mouse over Refereces in your Solution Explorer window. Then click menu "Add Reference ...".
Add BarcodeLib.Barcode.dll to your project.
Add barcode library to your Visual Studio Toolbox.
Open Toolbox in Visual Studio. Click menu View, and check submenu Toolbox.
Right click Toolbox, click menu Choose Items...
Goto .NET Framework Components tab.
Check component LinearWinForm, and its namespace is BarcodeLib.Barcode.Linear
If no component found, click Browse... button and select BarcodeLib.Barcode.dll file.
Now you can see the component displayed on Toolbox. You can drag LinearWinForm on your form, change barcode setting through properties widnow.
Add Reference BarcodeLib.Barcode.dll to your .NET project (ASP.NET website, Forms, any .NET project)
In your .NET class.
BarcodeLib.Barcode.Linear.Linear barcode = BarcodeLib.Barcode.Linear.Linear();
barcode.Data = "your barcode data";
// other barcode settings.// save barcode image into your system
barcode.drawBarcode("c:/barcode.gif");
Above code written in C# 2005
* Please set properties UOB and Resolution, before you set any image size related properties like barWidth, margin.
Set the Data property with the value to encode. Type is string.
The valid data length should be 20, 25, 29, or 31.
Setting up barcode image size:
Set property UOM (Unit of Measure) for properties BarWidth, BarHeight, LeftMargin and TopMargin.
Default is UnitOfMeasure.Pixel (0). Valid values are UnitOfMeasure.Pixel (0), UnitOfMeasure.CM (1), UnitOfMeasure.Inch (2).
Set the BarWidth (for bar cell width) and BarHeight (for bar cell height) properties. Both types are float.
Set the LeftMargin and TopMargin properties, and types are both float.
Set the Resolution property (Value is expressed in DPI - Dots per inch). This property is not working in Windows Controller, we will use end user's windows resultion.
Setting up text style in barcode image:
Set the ShowText properties. If this value is true, barcode data will be displayed with the barcode.
Set the TextFont property. The font used to display text in barcode image.
Set the Format property for barcode image type. Value can be "gif", "jpg", "png", and "bmp", default is "png".
Set BearerBars property, if you want to draw borders around barcode image. Value can be BearerBar.None (no bear bars), BearerBar.Frame (top, bottom, left, right borders drawn), BearerBar.TopBottom (only top, bottom's are drawn).
Set Rotate property, if you want to rotate barcode image.
Value can be 0 (RotateOrientation.BottomFacingDown),
1 (RotateOrientation.BottomFacingLeft),
2 (RotateOrientation.BottomFacingUp),
3 (RotateOrientation.BottomFacingRight)