Cómo personalizar y dar estilo a los códigos de barras

por Hairil Hasyimi Bin Omar

A lo largo de los años, el uso de códigos de barras ha ido ganando popularidad y se utilizan en una amplia gama de aplicaciones, ya sea para almacenar datos, ID o URL de una página web. En algunas aplicaciones, los códigos de barras se hacen visibles para los productos, lo que ha provocado un aumento de la demanda de opciones para estilizar los códigos de barras. Por lo tanto, algunos tipos/codificaciones de códigos de barras han surgido con su propia apariencia única como PDF417, Aztec, IntelligentMail, MaxiCode, DataMatrix y muchos más.

Además, IronBarcode ofrece a los usuarios opciones para dar más estilo a los códigos de barras, en el aspecto de colores del código de barras, redimensionamiento del código de barras y colores de fondo. Esto es posible gracias a nuestra biblioteca de código abierto, IronDrawing.

Biblioteca NuGet C# para

Instalar con NuGet

Install-Package BarCode
o
Java PDF JAR

Descargar DLL

Descargar DLL

Instalar manualmente en su proyecto

Redimensionar código de barras Ejemplo

Utilizar el método ResizeTo

Redimensionar un código de barras es un aspecto de la personalización que los usuarios pueden conseguir con IronBarcode. Para utilizar esta función, basta con llamar al método ResizeTo e introducir las nuevas medidas de ancho y alto en píxeles (px) para el código de barras. Esta acción activará una nueva representación sin pérdidas del código de barras.

Tenga en cuenta
Los valores demasiado pequeños para que el código de barras sea legible serán ignorados.

:path=/static-assets/barcode/content-code-examples/how-to/customize-barcode-style-use-ResizeTo.cs
using IronBarCode;

//  Crear código de barras
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.PDF417, 300, 100);

//  Exportar código de barras
barcode.SaveAsPng("output.png");

//  Redimensionar y exportar el código de barras
barcode.ResizeTo(250, 100).SaveAsPng("useResizeTo.png");
Imports IronBarCode

'  Crear código de barras
Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.PDF417, 300, 100)

'  Exportar código de barras
barcode.SaveAsPng("output.png")

'  Redimensionar y exportar el código de barras
barcode.ResizeTo(250, 100).SaveAsPng("useResizeTo.png")
VB   C#

El método ResizeTo puede invocarse sobre el objeto GeneratedBarcode. A continuación se muestran las imágenes de código de barras generadas al ejecutar el fragmento de código anterior.

Código de barras antes de redimensionar
Código de barras redimensionado

Utilizar el método ResizeToMil

Otro aspecto del redimensionamiento disponible en IronBarcode es el método ResizeToMil. A diferencia del método ResizeTo, éste ajusta los siguientes componentes:

  • Elemento del código de barras: La anchura del elemento más estrecho del código de barras, medida en milésimas de pulgada. (mil).
  • Altura: La altura del código de barras, medida en pulgadas. (el valor por defecto es 1 pulgada).
  • Resolución: Puntos por pulgada (el valor predeterminado es 96 PPP).

    Dicho esto, este método es especialmente adecuado para los códigos de barras 1D.

:path=/static-assets/barcode/content-code-examples/how-to/customize-barcode-style-use-ResizeToMil.cs
using IronBarCode;

//  Crear código de barras
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("12345", BarcodeEncoding.Codabar, 250, 100);

//  Exportar código de barras
barcode.SaveAsPng("output.png");

//  Redimensionar y exportar el código de barras
barcode.ResizeToMil(20, .73, 200).SaveAsPng("useResizeToMil.png");
Imports IronBarCode

'  Crear código de barras
Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("12345", BarcodeEncoding.Codabar, 250, 100)

'  Exportar código de barras
barcode.SaveAsPng("output.png")

'  Redimensionar y exportar el código de barras
barcode.ResizeToMil(20, .73, 200).SaveAsPng("useResizeToMil.png")
VB   C#

También puede llamar a este método en el objeto GeneratedBarcode. En la imagen siguiente, verá los efectos de aplicar el método ResizeToMil: se eliminan los espacios en blanco de los bordes del código de barras, y tanto el elemento más estrecho como la altura del código de barras se ajustan según los valores de los parámetros proporcionados al método.

Código de barras antes de ResizeToMil
Código de barras después de ResizeToMil

Cambiar el código de barras y el color de fondo

Una de las funciones más solicitadas para estilizar los códigos de barras es la posibilidad de cambiar tanto el color del código de barras como el del fondo. Gracias a IronDrawingIronBarcode ofrece esta posibilidad. Utilizando los métodos ChangeBarCodeColor y ChangeBackgroundColor en el objeto GeneratedBarcode, los usuarios pueden alterar los colores del código de barras y de su fondo. A continuación se muestra un sencillo fragmento de código que demuestra cómo conseguirlo.

:path=/static-assets/barcode/content-code-examples/how-to/customize-barcode-style-change-barcode-color.cs
using IronBarCode;
using IronSoftware.Drawing;

GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Aztec);

//  Cambiar el color del código de barras
barcode.ChangeBarCodeColor(Color.DarkKhaki);

//  Cambiar el color de fondo del código de barras
barcode.ChangeBackgroundColor(Color.ForestGreen);

barcode.SaveAsPng("coloredAztec2.png");
Imports IronBarCode
Imports IronSoftware.Drawing

Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Aztec)

'  Cambiar el color del código de barras
barcode.ChangeBarCodeColor(Color.DarkKhaki)

'  Cambiar el color de fondo del código de barras
barcode.ChangeBackgroundColor(Color.ForestGreen)

barcode.SaveAsPng("coloredAztec2.png")
VB   C#
Código de barras con color

Ejemplo de anotación de código de barras

IronBarcode también tiene la opción de añadir y dar estilo a la anotación del código de barras. Una vez más, el estilo de las anotaciones también se ve favorecido por la funcionalidad de IronDrawing en cuanto a la edición del color y los tipos de letra de las anotaciones.

:path=/static-assets/barcode/content-code-examples/how-to/customize-barcode-style-add-annotation.cs
using IronBarCode;
using IronSoftware.Drawing;

GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Aztec, 500, 500);

//  Cambiar el código de barras y el color de fondo
barcode.ChangeBarCodeColor(Color.DarkCyan);
barcode.ChangeBackgroundColor(Color.PeachPuff);

//  Crear fuente para anotación
Font annotationFont = new Font("Candara", FontStyle.Bold, 70);

//  Añadir anotación
barcode.AddAnnotationTextAboveBarcode("IronBarcodeRocks!", annotationFont, Color.DarkOrange);

//  Crear fuente para valor de código de barras
Font barcodeValueFont = new Font("Cambria", FontStyle.Regular, 70);

//  Añadir el valor del código de barras visualizado
barcode.AddBarcodeValueTextBelowBarcode(barcodeValueFont, Color.SandyBrown);

barcode.SaveAsPng("annotationAndBarcodeValue.png");
Imports IronBarCode
Imports IronSoftware.Drawing

Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Aztec, 500, 500)

'  Cambiar el código de barras y el color de fondo
barcode.ChangeBarCodeColor(Color.DarkCyan)
barcode.ChangeBackgroundColor(Color.PeachPuff)

'  Crear fuente para anotación
Dim annotationFont As New Font("Candara", FontStyle.Bold, 70)

'  Añadir anotación
barcode.AddAnnotationTextAboveBarcode("IronBarcodeRocks!", annotationFont, Color.DarkOrange)

'  Crear fuente para valor de código de barras
Dim barcodeValueFont As New Font("Cambria", FontStyle.Regular, 70)

'  Añadir el valor del código de barras visualizado
barcode.AddBarcodeValueTextBelowBarcode(barcodeValueFont, Color.SandyBrown)

barcode.SaveAsPng("annotationAndBarcodeValue.png")
VB   C#
Código de barras coloreado con anotaciones

Como extensión del fragmento de código anterior, instanciamos dos nuevos objetos IronSoftware.Drawing.Font para que sirvan como fuentes para las anotaciones tanto encima como debajo del código de barras. Sólo se requiere la Familia de fuentes para instanciar la fuente.

  • AñadirTextoDeAnotaciónSobreCódigoDeBarras": Añade texto de anotación personalizado encima del código de barras.
  • AñadirValorDeCódigoDeBarrasDeTextoBajoCódigoDeBarras: Añade el valor del código de barras debajo del código de barras.

    Estos dos métodos aceptan los mismos parámetros: los objetos IronSoftware.Drawing.Font, un objeto IronSoftware.Drawing.Color y la cantidad de espaciado entre el código de barras y el texto. Además, el método AddAnnotationTextAboveBarcode requiere una cadena para el texto de la anotación, ya que añade texto personalizado encima del código de barras.

    IronBarcode ofrece a los usuarios una amplia gama de oportunidades para personalizar y dar estilo a sus códigos de barras, limitadas únicamente por la imaginación de cada uno. Para obtener más información sobre la personalización de los códigos QR, consulte "Cómo personalizar y añadir logotipos a los códigos QR".