Test in production without watermarks.
Works wherever you need it to.
Get 30 days of fully functional product.
Have it up and running in minutes.
Full access to our support engineering team during your product trial
Barcodes have become an integral part of modern business operations, facilitating efficient inventory management, point-of-sale transactions, and data tracking. Among the various barcode symbologies, Code 39 stands out as one of the most widely used and versatile options.
A checksum digit, also known as a check digit or validation digit, is a digit added to a sequence of numbers (or alphanumeric characters) to help detect errors in the data. The purpose of the checksum digit is to ensure the integrity of the data by providing a simple method of error detection during data transmission or processing. One common application of a checksum digit is in barcodes, where it is often used to verify the accuracy of the scanned data. One of the barcode symbologies that uses a checksum digit is Code 39.
Code 39 encodes alphanumeric characters, including uppercase letters, numeric digits, and a few special characters. It includes a start character, an optional checksum character, and a stop character, making it self-checking to ensure accurate data capture. Also, human-readable text can be displayed below the generated barcode image.
IronBarcode (produced by Iron Software) is the leading .NET C# Barcode library for reading and creating barcodes. The User-friendly API allows developers to add barcode functionality to .NET applications in minutes. Developers can generate a Code 39 barcoding project and barcoding test in minutes using this library.
In this article, we'll explore the process of building a Code 39 barcode generator using IronBarcode.
Create a new C# console application or use an existing project where you want to generate new barcode images. This library can also be used on a .NET Windows forms application. For the sake of this tutorial, let's consider a console application.
Select the console application template and click next.
In the next step, you can provide the solution and project names.
Select the .NET Version and click "Create".
IronBarcode can be installed from the NuGet Package Manager.
It can also be installed from the Visual Studio package manager. Search for IronBarcode in Package Manager and click install.
Now, let's write the code to generate Code 39 barcodes using the IronBarcode library. Below is a simple example:
using IronBarCode;
Console.WriteLine("Code 39 Barcode Generator");
// Generate a Code 39 Barcode using the BarcodeWriter class
GeneratedBarcode code39Barcode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com/csharp/barcode",
BarcodeEncoding.Code39
);
// Save the generated barcode image as a PNG file
code39Barcode.SaveAsImage("ironSoftwareBarcode.png");
using IronBarCode;
Console.WriteLine("Code 39 Barcode Generator");
// Generate a Code 39 Barcode using the BarcodeWriter class
GeneratedBarcode code39Barcode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com/csharp/barcode",
BarcodeEncoding.Code39
);
// Save the generated barcode image as a PNG file
code39Barcode.SaveAsImage("ironSoftwareBarcode.png");
Imports IronBarCode
Console.WriteLine("Code 39 Barcode Generator")
' Generate a Code 39 Barcode using the BarcodeWriter class
Dim code39Barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeEncoding.Code39)
' Save the generated barcode image as a PNG file
code39Barcode.SaveAsImage("ironSoftwareBarcode.png")
This simple program initializes a BarcodeWriter
C# class, sets the encoding format to Code39
, and generates a barcode PNG using the provided data. The barcode image is then saved as ironSoftwareBarcode.png
.
Output:
Here we are using the BarcodeWriter class from the IronBarcode library to create Code 39 barcodes with the URL data provided. Every time the code is run, a new barcode image is generated.
Annotation text can be added to barcodes easily with IronBarcode. The BarcodeWriter
object generates a barcode object which has a Fluent API, allowing barcode text to be set in a single line of code.
using IronBarCode;
Console.WriteLine("Code 39 Barcode Generator");
// Generate a Code 39 Barcode
GeneratedBarcode code39Barcode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com/csharp/barcode",
BarcodeEncoding.Code39
);
// Add annotation text above and the barcode value text below the barcode
code39Barcode.AddAnnotationTextAboveBarcode("Product URL:");
code39Barcode.AddBarcodeValueTextBelowBarcode();
// Save the barcode image with annotation text
code39Barcode.SaveAsImage("ironSoftwareBarcodeWithText.png");
using IronBarCode;
Console.WriteLine("Code 39 Barcode Generator");
// Generate a Code 39 Barcode
GeneratedBarcode code39Barcode = BarcodeWriter.CreateBarcode(
"https://ironsoftware.com/csharp/barcode",
BarcodeEncoding.Code39
);
// Add annotation text above and the barcode value text below the barcode
code39Barcode.AddAnnotationTextAboveBarcode("Product URL:");
code39Barcode.AddBarcodeValueTextBelowBarcode();
// Save the barcode image with annotation text
code39Barcode.SaveAsImage("ironSoftwareBarcodeWithText.png");
Imports IronBarCode
Console.WriteLine("Code 39 Barcode Generator")
' Generate a Code 39 Barcode
Dim code39Barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeEncoding.Code39)
' Add annotation text above and the barcode value text below the barcode
code39Barcode.AddAnnotationTextAboveBarcode("Product URL:")
code39Barcode.AddBarcodeValueTextBelowBarcode()
' Save the barcode image with annotation text
code39Barcode.SaveAsImage("ironSoftwareBarcodeWithText.png")
Output:
Here you can see the product URL human-readable text is added above the barcode, and the value of the barcode in human-readable text is added below the barcode image.
IronBarcode allows the barcode and the human-readable text to be styled. Usually, styling barcodes include resizing, setting margins, changing background colors, changing barcode colors, fonts, and verifying that the output barcode is still readable. All these methods are available on the BarcodeWriter
object. The width and height are set in pixels.
The BarcodeWriter
object can also work with a Stream object as shown below. This is particularly helpful in web API applications to save memory. A graphics object can also take advantage of this.
IronBarcode requires a license key. The key needs to be placed in appsettings.json
.
{
"IronBarcode.LicenseKey": "MYLICENSE.KEY.TRIAL"
}
Provide your email to get a trial license. After submitting your email ID, the key will be delivered via email.
In this comprehensive guide, we have explored the process of building a Code 39 barcode generator using the C# programming language. Code 39 is versatile and widely used in barcode symbology, known for its simplicity and ability to encode alphanumeric characters. By leveraging the capabilities of the IronBarcode library, we have demonstrated a step-by-step approach to create a C# application capable of generating Code 39 barcodes with optional checksum digits.
As technology continues to advance, the importance of accurate and efficient data encoding and decoding becomes increasingly critical. Building a Code 39 barcode generator in C# not only provides a practical tool for businesses and developers but also serves as an educational exercise in understanding barcode symbologies, checksum algorithms, and the integration of third-party libraries in C# applications.
In conclusion, this guide equips developers with the knowledge and tools needed to create a robust Code 39 barcode generator, fostering the integration of reliable barcode solutions into their projects. Whether you are a seasoned developer or a newcomer to barcode generation, this article provides a solid foundation for further exploration and customization based on the specific requirements of your applications.
Code 39 is a widely used barcode symbology that encodes alphanumeric characters, including uppercase letters, numeric digits, and a few special characters. It is known for its simplicity and versatility in various applications.
To create a Code 39 barcode generator in C#, you need Visual Studio or another C# development environment and the NuGet Package Manager to manage project packages.
You can install IronBarcode from the NuGet Package Manager or from the Visual Studio package manager by searching for IronBarcode and clicking install.
To generate a Code 39 barcode, use the BarcodeWriter class from IronBarcode to create a barcode object with the desired encoding format and save it as an image file.
Yes, using IronBarcode, you can add annotation text to Code 39 barcodes above and below the barcode image using methods like AddAnnotationTextAboveBarcode and AddBarcodeValueTextBelowBarcode.
IronBarcode allows styling options such as resizing, setting margins, changing background and barcode colors, and modifying fonts to ensure the barcode is readable.
The BarcodeWriter object in IronBarcode can work with a Stream object, which is useful for web API applications to save memory and integrate with graphics objects.
Yes, IronBarcode requires a license key. You can obtain a trial license by providing your email, after which the key will be sent to you via email.
Code 39 is considered versatile because it supports encoding of both alphanumeric characters and certain special characters, making it suitable for a wide range of applications.
A checksum digit helps ensure data integrity by detecting errors during data transmission or processing, verifying the accuracy of scanned data.