C# Code 39 Generator Library SDK

Integration & Developer Guide for Code 39 linear barcode image generation in C#

Generate barcode Code 39 images in Visual C# .NET with complete sample C# source code



In this C# tutorial, you will learn how to generate Code 39 barcode images in .NET Windows and ASP.NET applications using C#.

  • Fully support ISO/IEC 16388 standard
  • Easy to encode characters with Code 39 standard mode or full ASCII mode
  • Encode and draw high dpi Code 39 image on specific area for printing
  • Easy to enable Code 39 generation in ASP.NET Core, MVC, WinForms, WPF, web service.
  • Support .NET 8, 7, 6, 5, .NET Core 3.1, 2.1, and .NET Framework

How to create Code 39 barcodes in ASP.NET and .Windows using C#

  1. Download .NET Code 39 Barcode Generator Suite
  2. Install C# library to create Code 39 barcodes in .NET projects
  3. Step by Step Tutorial













Code 39 Barcode Introduction

Top
Code 39, also known as Alpha39, Code 3 of 9, Code 3/9, Type 39, USS Code 39, or USD-3, is the first alpha-numeric linear barcode symbology used world-wide.

C# Code 39 Generator is one of the linear barcodes generation in OnBarcode's .NET Barcode Generation Controls, which generates & prints Code 39, Code 39 extension and other linear & 2D bar codes in C#.NET applications.
OnBarcode C# Barcode Generator makes it easy to generate, create Code 39 and other linear & 2d barcodes in Microsoft Word.
OnBarcode offers several Code 39 Generator components and software, such as Code 39 in .NET, Code 39 in Java, Code 39 in VB.NET, Code 39 in ASP.NET, Code 39 Generator.
This page is providing a complete C# source code for generating Code 39 barcode images in C# class library using C# Barcode generation .net SDK. Complete Code 39 custmoization settings is listed in C# Code 39 generation guide.

Quick to Create Code 39 Barcode Image in C#

Top
Using C# Barcode Generator library, you can easily generate Code 39 barcode image in your ASP.NET Core & Framework, MVC, WinForms, WPF .NET web and desktop applications.

            Linear barcode = new Linear();
            barcode.Data = "CODE-39";
            barcode.Type = BarcodeType.CODE39;
            barcode.drawBarcode("C://Output//barcode-code39-sample.png");


In the previous C# sample code, you will create a Code 39 barcode image file.
  • Create a Linear object with barcode data encode
  • Choose the barcode format as "BarcodeType.CODE39"
  • Call drawBarcode() method to create and print the Code 39 barcode to a PNG image file.

Code 39 barcode data characters encoding using C#

Top

Code 39 standard mode

Code 39 barcode standard mode supports 43 characters, including
  • Numeric digit: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
  • Uppercase letters (A - Z)
  • Special characters: - (Dash), $ (Dollar), % (Percentage), (Space), . (Point), / (Slash), + (Plus)
  • Start/Stop character
In C# code 39 barcode generator, you need choose barcode Type property value "BarcodeType.CODE39".
            Linear code39 = new Linear();

            code39.Type = BarcodeType.CODE39;

            //Input your barcode encoding data:
            code39.Data = "ABC-12345";


Code 39 Full ASCII mode

Code 39 supports encoding the full 128 character ASCII character set in accordance with ISO 646 IRV.
In C# code 39 barcode generator, you need choose barcode Type property value "BarcodeType.CODE39EX".
            Linear code39 = new Linear();

            code39.Type = BarcodeType.CODE39EX;

            //Input your barcode encoding data:
            code39.Data = "abc-12345";


Code 39 barcode check digit

Code 39 barcode does not include a checksum or check digit by default.

For applications requiring enhanced data security, the modulo 43 (MOD43) check character may be used as a check digit.

You can view the barcode Code 39 check digit calculator in details
In C#, to add checksum digit to Code 39 barcode, you need set property AddCheckSum to true.
            Linear code39 = new Linear();

            code39.Type = BarcodeType.CODE39;

            //Input your barcode encoding data:
            code39.Data = "ABC-123";

            code39.AddCheckSum = true;




Do not display Code 39 barcode check digit in HRI

You can also enable code 39 check digit, and hide it in the HRI (human readable interpretation).

In C# class, you need set property ShowCheckSumChar to false.
            // Display checksum digit at the end of barcode data.
            code39.ShowCheckSumChar = false;




Code 39 barcode Start/stop characters

Code 39 barcode uses asterisk character (*) as Start and Stop characters, and it should not be part of the Code 39 barcode data.

In C# class, you can display or hide start/stop characters (asterisk *) through property ShowStartStopInText.
            code39.ShowStartStopInText = false;


Code 39 Barcode Dimension Size in C#

Top
In C# Code 39 generator, you can use the following barcode dimension size settings:
  • UOM: Unit of measure. You can choose PIXEL, CM or INCH.
  • X: Width of narrow element. The mimumum bar width is defined by the application specification
  • Y: Bar module height.
  • N: Wide/narrow ratio. the valid value is from 2.0 to 3.0 inclusive.
  • I: Width of intercharacter gap
    • minimum gap is equal to X
    • maximum: for X < 0.287mm, is 5.3X; for X >= 0.287mm, is 1.52mm or 3X, whichever is greater.
  • LeftMargin, RightMargin: Quiet zone. the minimum width of quiet zone is 10X.
You can view the Code 39 Barcode Size Calculator here.

An example C# source code to set Code 39 barcode image size.
            Linear code39 = new Linear();

            code39.Type = BarcodeType.CODE39;

            //Input your barcode encoding data:
            code39.Data = "ABC-123";
            code39.AddCheckSum = true;

            // Unit of measure, pixel, cm and inch supported.
            code39.UOM = UnitOfMeasure.PIXEL;
            code39.X = 3;
            code39.Y = 120;
            code39.N = 3.0f;
            code39.I = 1.2f;
            code39.LeftMargin = 30;
            code39.RightMargin = 30;






Tutorial: Create Code 39 barcode in C# ASP.NET Core web application

Top
Now we will start with a new ASP.NET Core web application and enable Code 39 barcode generation in it. We will further add more Code 39 customizations printed on the webpage.

In this tutorial, you:
  • Enable Code 39 full ASCII mode
  • Show or hide Code 39 Start/Stop characters on the webpage
  • Add or without check sum character, Show or hide it in Code 39 text


Build a new ASP.NET Core app with Code 39 barcode generation

We have already provided a ASP.NET Core demo app with barcode generation enabled from scratch.

You can see details here: How to create barcode in ASP.NET Core web app using C#?.

We will update the project to support Code 39 generation and customization from this ASP.NET Core web application.

  1. Find and open file "Index.cshtml.cs" from previously built project "OnBarcode.BarcodeGenerator.ASPNETCoreDemo" in Visual Studio
  2. Go to "OnPost()" method, find the C# code "linear.Type = OnBarcode.Barcode.BarcodeType.CODE128;". Replace it with the new code : "linear.Type = OnBarcode.Barcode.BarcodeType.CODE39;"

            public Task<IActionResult> OnPost()
            {
                this.Message = Request.Form["tbMessage"].ToString();
    
                OnBarcode.Barcode.Linear linear = new OnBarcode.Barcode.Linear();
                linear.Type = OnBarcode.Barcode.BarcodeType.CODE39;
                linear.Data = this.Message;
                linear.OutputFileFormat = FileFormat.PNG;
    
                byte[] dataBytes = linear.drawBarcodeAsBytes();
                BarcodeImage = System.Convert.ToBase64String(dataBytes);
    
                return Task.FromResult<IActionResult>(Page());
            }
    
  3. Now you can generate Code 39 barcode images on the web page.


Create Code 39 with ASCII text encode in C# ASP.NET Core

Code 39 barcode supports 43 characters encoding, includes digits, Upper case letters, and other special characters. To encode text string from ASCII table, you need Code 39 extension mode.

Note: ASCII table includes 33 control characters which are non-printing ones. To create Code 39 barcode with control chars, you need convert chars to bytes first. See details here: How to Print Barcode with ASCII Non-printing Chars using C#?

Simply change barcode type to "CODE39EX", you can enable Code 39 extension mode generation in ASP.NET web app.

Add the C# code below to "OnPost()" method in the file "Index.cshtml.cs".
linear.Type = OnBarcode.Barcode.BarcodeType.CODE39EX;




Now you can create and print Code 39 with lower case letters encode in your ASP.NET Core web page.


Show/hide Code 39 start/stop characters in barcode text

Code 39 barcode will include two special characters (Start, Stop characters) in the beginning and ending of the barcode. By default, the two characters will be printed as "*" in the Code 39 barcode text.

You can hide the two characters by setting ShowStartStopInText to false.

Add the C# code below to "OnPost()" method in the file "Index.cshtml.cs".
linear.ShowStartStopInText = false;



Now the start/stop (*) labels have been removed from the Code 39 barcode text. Please note that the start/stop characters are still be encoded in the above Code 39 barcode moduels.


Add or without check sum character, Show or hide it in Code 39 text

According to the Code 39 ISO specification, the checksum character is optional for Code 39. You can create Code 39 with check sum character or without it. By default, the C# barcode library will not add check sum to Code 39. If you need it, you can enable it through the following C# code.

Add the C# code below to "OnPost()" method in the file "Index.cshtml.cs".
linear.AddCheckSum = true;



When AddCheckSum is true, the barcode generator library will calculate and print the Code 39 check sum character in the generated Code 39 barcode.




 

Code 39 Barcode Complete Property Settings with detailed C# sample source code

.NET Barcode Generator library has provided 20+ property settings to customize the created Code 39 barcode images. You view the complete list of Code 39 barcode property settings here.

And view the detailed C# source code at How to generate Code 39 barcode in C# application?




















OnBarcode is a market-leading provider of barcode imaging generator, reader controls and components for ASP.NET, Windows Forms, WPF, as well Java, Android, iOS (iPhone, iPad) across all major enterprise development platforms. We provides comprehensive tutorials and how-tos for various linear, 2d barcode information, such as C# in ASP.NET, C# .NET, C# Barcode Encoding, C# Barcode Image, VB.NET in ASP.NET, VB.NET Winforms, VB.NET Barcode Encoding. OnBarcode barcode products are supported by RasterEdge ASP.NET Document Viewer, which supports ASP.NET PDF Viewer, ASP.NET MVC Document Viewer, ASP.NET PDF Editor, MVC PDF Viewer. And provide high quality C# Convert PDF to Tiff, C# Convert PDF to Word, C# Convert PDF to HTML, C# Convert PDF to Jpeg images, and their easy and simple documents, like C# PDF SDK, C# extract text from PDF, C# Compress PDF, Print PDF in C# and C# extract image from PDF.
Terms of Use | Privacy Policy
Copyright © OnBarcode.com . All rights reserved.