Our Customers
Contact Us Email: support@barcodelib.com
Home > .NET Barcode > Barcode Generation Guide > .NET Code-39 Generator for .NET, ASP.NET, C#, VB.NET
Download Barcode for .NET Suite Trial

.NET Code-39 Generator for .NET, ASP.NET, C#, VB.NET

Code-39 Bar Code Generation Guide in .NET, C#, ASP.NET, VB.NET
  • Simple to draw Code-39 barcodes in .NET applications
  • Compatible with the latest Code-39 ISO specification [ISO/IEC 16388 (Second edition 2007-05-15)]
  • Generate high quality Code-39 images in JPEG, GIF & PNG formats
  • Completely built in C# codes, compatible with .net 2.0 and later versions
  • Generate Code-39 barcodes using C#, VB.NET on ASP.NET or Windows Forms
  • Generate Code-39 in Crystal Reports using C#, VB.NET
  • Generate Code-39 in Reporting Services using C#, VB.NET
  • Professional .NET Barcode Generator component supporting all kinds of barcode settings
  • One time payment for royalty-free developer license and use it for lifetime
.NET Code-39 Barcode Introduction
Code-39 is also known as ANSI/AIM Code 39, ANSI/AIM Code 39, Uniform Symbology Specification Code 39, USS Code 39, USS 39, Code 3/9, Code 3 of 9, USD-3, LOGMARS, Alpha39, Code 39 Extended, and Code 39 Full ASCII.
Compatibility: Barcode for .NET component is compatible with ISO/IEC 16388 (Second edition 2007-05-15).
Code 39, the first alpha-numeric symbology to be developed, is still widely used-especially in non-retail environments. It is the standard bar code used by the United States Department of Defense, and is also used by the Health Industry Bar Code Council (HIBCC).

Sample of a Code 39 Barcode

Sample of a Code 39 Extension Barcode
Code 39 Encoding Data Scope
  1. Code 39 Barcode for .NET, ASP.NET supports:
    • 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
    • Uppercase letters (A - Z)
    • - (Dash), $ (Dollar), % (Percentage), (Space), . (Point), / (Slash), + (Plus)
  2. Code 39 Extension Barcode for .NET, ASP.NET supports:
    • all 128 ASCII characters
How to Generate Code 39 Barcode Image in IIS without Visual Studio .NET?
  1. Under downloaded trial package, copy barcode folder to your IIS folder, e.g. C:\Inetpub.
  2. Create a new virtual directory in IIS, named barcode, and link to the above "barcode" folder.
  3. Restart IIS.
  4. To test your installation, open your web browser and navigate to:
    http://YourDomain:port/barcode/linear.aspx?Type=7&Data=CODE39-123456789012
  5. 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=7&Data=CODE39-123456789012" />
    Using this method, it will not generate any barcode images in your IIS server side.
How to Generate Code 39 Barcode Image through ASP.NET Web Form Control?
  1. 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.
  2. 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.
  3. Go to "barcode" folder in the trial package, copy file "linear.aspx" to the same folder as your aspx page, which will generate barcodes.
  4. You can drag LinearASPNET on your aspx page in design view, change barcode setting through properties window.
  5. Run the project, you will find barcode images generated in your aspx pages.
How to Generate Code 39 Barcode Image through .NET Windows Form Control in C# or VB.NET?
  1. 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.
  2. 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.
  3. 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 Code 39 Barcode Image in .NET class?
  1. 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.CODE39;
barcode.Data = "CODE39-123456789012";
barcode.N = 3;
barcode.AddCheckSum = true;

barcode.UOM = UnitOfMeasure.PIXEL;
barcode.BarWidth = 1;
barcode.BarHeight = 80;
barcode.LeftMargin = 10;
barcode.RightMargin = 10;
barcode.TopMargin = 10;
barcode.BottomMargin = 10;

barcode.ImageFormat = System.Drawing.Imaging.ImageFormat.Png;
// more barcode settings here

// save barcode image into your system
barcode.drawBarcode("c://barcode.png");

// generate barcode & output to byte array
byte[] barcodeInBytes = barcode.drawBarcodeAsBytes();

// generate barcode to Graphics object
Graphics graphics = ...
barcode.drawBarcode(graphics);

// 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 Code 39 Barcode Image using .NET Barcode Generator Windows Control?
In Windows Controller, just call method SaveAsImage(string filename). e.g. SaveAsImage("C:\barcode.gif").
.NET Code-39 Barcode Property Settings
  1. Set the Type property to BarcodeType.CODE39 or BarcodeType.CODE39EX.
    Web Stream URL Parameter: Type.
    Value: 7 for BarcodeType.CODE39, and 8 for BarcodeType.CODE39EX.
    Sample: &Type=7
  2. Set the Data property with the value to encode.
    Type is string.
    Web Stream URL Parameter: Data.
    • Valid Data Scope for Code 39 (BarcodeType.CODE39):
      • 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
      • Uppercase letters (A - Z)
      • - (Dash), $ (Dollar), % (Percentage), (Space), . (Point), / (Slash), + (Plus)
    • Valid Data Scope for Code 39 extension (BarcodeType.CODE39EX):
      • all 128 ASCII characters
    • Sample: barcode.Data = "CODE39-123456789012"
  3. AddCheckSum property is optional. Modulo 43 will be applied, if AddCheckSum property is true.
    Web Stream URL Parameter: AddCheckSum. Valid values are: "true", and "false".
  4. Set ShowStartStopChar property. If set to true, Code 39 Start and Stop Character (*) will be added and shown in the barcode data.
    Type is bool. Default is false.
    Web Stream URL Parameter: ShowStartStopChar.
  5. Set InterGap property, inter-character space. Its value is the multiple of BarWidth.
    Default is 1.0f.
    Web Stream URL Parameter: InterGap.
  6. Set N property, Wide bar vs Narrow bar ratio. Valid values are from 2.0f to 3.0f, inclusive.
    Default is 2.0f.
    Web Stream URL Parameter: N.
  7. 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.
  8. 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"
  9. 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.
  10. 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.
  11. 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
    • 0 (RotateOrientation.BottomFacingDown)
    • 1 (RotateOrientation.BottomFacingLeft)
    • 2 (RotateOrientation.BottomFacingUp)
    • 3 (RotateOrientation.BottomFacingRight)
All Supported .NET Barcode Symbologies
Generate Linear Barcodes:
Generate 2D Barcodes: