One time payment for royalty-free developer license and use it for lifetime
.NET OneCode Barcode Introduction
strong>USPS Intelligent Mail Barcode is also known as OneCode 4CB, USPS 4CB, 4-CB, 4-State Customer Barcode, USPS OneCode Solution Barcode.
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 0000000000-99999999999
OneCode Encoding Data Scope
Onecode Barcode for .NET, ASP.NET supports:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
How to Generate OneCode Barcode Image in IIS without Visual Studio .NET?
Under downloaded trial package, copy barcode folder to your IIS folder, e.g. C:\Inetpub.
Create a new virtual directory in IIS, named barcode, and link to the above "barcode" folder.
Restart IIS.
To test your installation, open your web browser and navigate to: http://YourDomain:Port/barcode/linear.aspx?Type=24&Data=0123456709498765432101234567891
To create barcode image in your aspx or html page, you need pass the url to IMG tag src value. For example: <img src="http://YourDomain:port/barcode/linear.aspx?Type=24&Data=0123456709498765432101234567891" /> Using this method, it will not generate any barcode images in your IIS server side.
How to Generate OneCode Barcode Image through ASP.NET Web Form Control?
Install .NET Barcode Controller to your ASP.NET project.
Add Reference BarcodeLib.Barcode.ASP.NET.dll to your project. Do not copy the dll to the bin directory, Visual Studio will do so, during project compilation time.
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.
If no BarcodeLib component found, click Browse... button and select BarcodeLib.Barcode.ASP.NET.dll file.
Then sort "Namespace" column, you will find 4 components from BarcodeLib.Barcode.
Check component LinearASPNET, and its namespace is BarcodeLib.Barcode.
Click "OK" button, you will find four components under "General": LinearASPNET.
Go to "barcode" folder in the trial package, copy file "linear.aspx" to the same folder as your aspx page, which will generate barcodes.
You can drag LinearASPNET on your aspx page in design view, change barcode setting through properties window.
Run the project, you will find barcode images generated in your aspx pages.
How to Generate OneCode Barcode Image through .NET Windows Form Control in C# or VB.NET?
Add Reference BarcodeLib.Barcode.WinFroms.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.WinFroms.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.
If no BarcodeLib component found, click Browse... button and select BarcodeLib.Barcode.WinFroms.dll file.
Then sort "Namespace" column, you will find 4 components from BarcodeLib.Barcode.
Check component LinearWinForm, and its namespace is BarcodeLib.Barcode.
Click "OK" button, you will find the control under "Common Controls": LinearWinForm.
Now you can see the component displayed on Toolbox. You can drag LinearWinForm on your form, change barcode setting through properties widnow.
How to Generate OneCode Barcode Image in .NET class?
Add Reference BarcodeLib.Barcode.ASP.NET.dll or BarcodeLib.Barcode.WinFroms.dll to your .NET project (ASP.NET website, Forms, any .NET project). In your .NET class:
BarcodeLib.Barcode.Linear barcode = new BarcodeLib.Barcode.Linear(); barcode.Type = BarcodeType.ONECODE;
// should be 20, 25, 29, or 31 digits. barcode.Data = "0123456709498765432101234567891";
// generate barcode and output to Bitmap object Bitmap barcodeInBitmap = barcode.drawBarcode();
// generate barcode and output to HttpResponse object HttpResponse response = ...; barcode.drawBarcode(response);
// generate barcode and output to Stream object Stream stream = ...; barcode.drawBarcode(stream);
Above code written in C# 2005
How to Save OneCode Barcode Image using .NET Barcode Generator Windows Control?
In Windows Controller, just call method SaveAsImage(string filename). e.g. SaveAsImage("C:\barcode.gif");
OneCode Barcode Property Settings
Set the Type property to BarcodeType.ONECODE. Web Stream URL Parameter: Type. Value: 24. Sample: &Type=24 .
Set the Data property with the value to encode. Type is string. Web Stream URL Parameter: Data.
Valid Data Scope:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Valid Data Format:The valid data length should be 20, 25, 29, or 31 digits.
Sample: "0123456709498765432101234567891".
AddCheckSum property is not applied.
Barcode Size Settings.
Set property UOM (Unit of Measure) for properties BarWidth, BarHeight, LeftMargin and TopMargin. Valid values are UnitOfMeasure.Pixel (0), UnitOfMeasure.CM (1), UnitOfMeasure.Inch (2). Default is UnitOfMeasure.Pixel (0). Web Stream URL Parameter: UOM. Valid values are: 0, 1, 2.
Set the ImageWidth and ImageHeight properties. Both types are float. BarWidth default is 0 pixel. BarHeight default is 0 pixel. Web Stream URL Parameter: ImageWidth and ImageHeight.
Set the BarWidth (for bar cell width) and BarHeight (for bar cell height) properties. Both types are float. BarWidth default is 1 pixel. BarHeight default is 80 pixel. Web Stream URL Parameter: BarWidth and BarHeight.
Set the LeftMargin, RightMargin, TopMargin and BottomMargin properties. Types are all float. Default are 10. Web Stream URL Parameter: LeftMargin, RightMargin, TopMargin, BottomMargin.
Set the ResizeImage property to "true" and our component will resize the barcode image if manual setting is invalid. Type is bool. Default is false. Web Stream URL Parameter: ResizeImage.
Set the Resolution property (Value is expressed in DPI - Dots per inch). Type is int. Default is 96 dpi. Web Stream URL Parameter: Resolution.
Setting up text style in barcode image.
Set the ShowText properties. If ShowText is True, barcode data will be displayed with the barcode. Type is bool.Default is True. Web Stream URL Parameter: ShowText. Valid values are: "true", and "false".
Set the TextFont property. The font used to display text in barcode image. Type is System.Drawing.Font. Default is new Font("Arial", 9f, FontStyle.Regular). Web Stream URL Parameter: TextFont. Value format: [font name]|[font size]|[font style]. Sample Values: "Arial|12|Bold,Underline"
Set Color Related properties.
Set the BackgroundColor property. Barcode background color can be changed. Type is System.Drawing.Color.Default is BackgroundColor = Color.White. Web Stream URL Parameter: BackgroundColor.
Set the BarColor property. Barcode bars color can be changed. Type is System.Drawing.Color.Default is BarColor = Color.Black. Web Stream URL Parameter: BarColor.
Set the TextFontColor property. Barcode human-readable data text color can be changed.
Type is System.Drawing.Color.Default is TextFontColor = Color.Black. Web Stream URL Parameter: TextFontColor.
Set the ImageFormat property for barcode image type.
Type is System.Drawing.Imaging.ImageFormat. Default value is ImageFormat.Png. Web Stream URL Parameter: ImageFormat. Valid values are: gif, jpeg, png, bmp, tiff.
Set Rotate property, if you want to rotate barcode image. Valid values are as below. Default Value is 0 (RotateOrientation.BottomFacingDown). Web Stream URL Parameter: Rotate. Valid values are: 0, 1, 2, 3