Generar imágenes de código de barras en C#

Chaknith Bin
Chaknith Bin
5 de noviembre, 2018
Actualizado 10 de diciembre, 2024
Compartir:
This article was translated from English: Does it need improvement?
Translated
View the article in English

En este tutorial, veremos cómo generar un código de barras en C# .NET con un ejemplo utilizando la librería Iron Barcode.

Veremos lo fácil que es crear un código de barras en C# o VB.NET, así como darle estilo a nuestro código de barras, y luego exportarlo como imagen.

Empezar a utilizar IronBarcode

Comience a usar IronBarcode en su proyecto hoy con una prueba gratuita.

Primer Paso:
green arrow pointer



Instalación

Lo primero que tenemos que hacer es instalar la biblioteca Iron Barcode, que añade funcionalidad de código de barras al .NET Framework. Podemos hacer esto usando nuestro paquete NuGet o descargando el .NET Barcode DLL.

Install-Package BarCode
Crear Códigos de Barras y QR en .NET puede ser una operación difícil sin una biblioteca confiable de C# para códigos de barras. Aquí viene Iron Barcode

Renderizar un Código de Barras Simple

En el siguiente ejemplo podemos ver que se puede escribir un código de barras con contenido numérico o de texto utilizando sólo un par de líneas de código, utilizando Iron Barcode.

:path=/static-assets/barcode/content-code-examples/tutorials/csharp-barcode-image-generator-1.cs
using IronBarCode;

// Generate a Simple BarCode image and save as PNG
GeneratedBarcode myBarcode = IronBarCode.BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.Code128);
myBarcode.SaveAsPng("myBarcode.png");

// This line opens the image in your default image viewer
System.Diagnostics.Process.Start("myBarcode.png");
Imports IronBarCode

' Generate a Simple BarCode image and save as PNG
Private myBarcode As GeneratedBarcode = IronBarCode.BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.Code128)
myBarcode.SaveAsPng("myBarcode.png")

' This line opens the image in your default image viewer
System.Diagnostics.Process.Start("myBarcode.png")
$vbLabelText   $csharpLabel

Primero creamos el código de barras especificando su valor y el formato de código de barras que utilizaremos del Enum IronBarCode.BarcodeWriterEncoding. A continuación, podemos elegir guardar como imagen o guardar como un objeto System.Drawing.Image o Bitmap. ¡Eso es todo el código que se necesita!

Crear una imagen de código de barras en C# ejemplo

La última línea de código simplemente abre el código de barras PNG del ejemplo para que pueda verlo con sus propios ojos.

Creación Avanzada de Códigos de Barras##

Aunque el ejemplo anterior ha sido eficaz, en el mundo real es posible que queramos hacer algo más.

En el siguiente ejemplo, podemos añadir anotaciones al código de barras, establecer la fuente, mostrar su valor debajo, añadir márgenes, cambiar el color del código de barras y, a continuación, guardarlo, todo ello de forma muy sencilla en C#.

También podemos elegir exportar a HTML o PDF en lugar de a una imagen si eso es más apropiado para nuestra aplicación.

:path=/static-assets/barcode/content-code-examples/tutorials/csharp-barcode-image-generator-2.cs
using IronBarCode;
using IronSoftware.Drawing;

// Styling a QR code and adding annotation text
GeneratedBarcode myBarCode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.QRCode);
myBarCode.AddAnnotationTextAboveBarcode("Product URL:");
myBarCode.AddBarcodeValueTextBelowBarcode();
myBarCode.SetMargins(100);
myBarCode.ChangeBarCodeColor(Color.Purple);

// Save as HTML
myBarCode.SaveAsHtmlFile("MyBarCode.html");
Imports IronBarCode
Imports IronSoftware.Drawing

' Styling a QR code and adding annotation text
Private myBarCode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode", BarcodeWriterEncoding.QRCode)
myBarCode.AddAnnotationTextAboveBarcode("Product URL:")
myBarCode.AddBarcodeValueTextBelowBarcode()
myBarCode.SetMargins(100)
myBarCode.ChangeBarCodeColor(Color.Purple)

' Save as HTML
myBarCode.SaveAsHtmlFile("MyBarCode.html")
$vbLabelText   $csharpLabel
Utilice C# para crear una imagen de código de barras con anotaciones y estilo

El código debería ser autoexplicativo, pero si no lo es, te animo a leer la documentación de la clase [GeneratedBarcode](/csharp/barcode/object-reference/api/IronBarCode.GeneratedBarcode.html) dentro de la Referencia de la API.

Fluidez

En nuestro ejemplo final, veremos que podemos crear, estilizar y exportar un código de barras en una sola línea de código.

Iron Barcode implementa una API Fluent opcional similar a System.Linq. Encadenando llamadas de método a llamadas de método a llamadas de método, primero creamos un código de barras, luego establecemos sus márgenes y luego exportamos a Bitmap en una sola línea.

Esto puede resultar muy cómodo y facilitar la lectura del código.

:path=/static-assets/barcode/content-code-examples/tutorials/csharp-barcode-image-generator-3.cs
using IronBarCode;
using IronSoftware.Drawing;

// Fluent API for Barcode Image generation.
string value = "https://ironsoftware.com/csharp/barcode";
AnyBitmap barcodeBitmap = BarcodeWriter.CreateBarcode(value, BarcodeEncoding.PDF417).ResizeTo(300, 200).SetMargins(100).ToBitmap();
System.Drawing.Bitmap barcodeLegacyBitmap = (System.Drawing.Bitmap)barcodeBitmap;
Imports IronBarCode
Imports IronSoftware.Drawing

' Fluent API for Barcode Image generation.
Private value As String = "https://ironsoftware.com/csharp/barcode"
Private barcodeBitmap As AnyBitmap = BarcodeWriter.CreateBarcode(value, BarcodeEncoding.PDF417).ResizeTo(300, 200).SetMargins(100).ToBitmap()
Private barcodeLegacyBitmap As System.Drawing.Bitmap = CType(barcodeBitmap, System.Drawing.Bitmap)
$vbLabelText   $csharpLabel

El resultado es un System.Drawing.Image de un código de barras PDF417 que se ve así:

Generación sencilla y fluida de códigos de barras en C# con Iron BarCode

Aprendiendo Más##

Para obtener más información sobre este ejemplo de código y cómo leer imágenes de códigos de barras en C#, puede verlo en GitHub, descargarlo como un Proyecto de Visual Studio o mirar los otros ejemplos dentro de esta sección, incluido nuestro tutorial sobre cómo crear códigos QR.

Descargas de código fuente en C#

Las fuentes de este tutorial "Generación de imágenes de código de barras" están disponibles como un proyecto de código generador de código de barras C# para Visual Studio 2017:

Documentación adicional

También puede encontrar las clases BarcodeReader dentro de la Referencia de API de gran valor. También hay información sobre cómo usar el software como un escáner de códigos de barras en C#.

Además, hay otros tutoriales que pueden iluminar otros aspectos de IronBarcode, incluidos códigos QR y Lectura de imágenes de código de barras con .NET.

Chaknith Bin
Ingeniero de software
Chaknith trabaja en IronXL e IronBarcode. Tiene una gran experiencia en C# y .NET, ayudando a mejorar el software y a apoyar a los clientes. Sus conocimientos de las interacciones con los usuarios contribuyen a mejorar los productos, la documentación y la experiencia general.