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

This article was translated from English: Does it need improvement?
Translated
View the article in English

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.

Atención
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;

// Create barcode
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.PDF417, 300, 100);

// Export barcode
barcode.SaveAsPng("output.png");

// Resize and export the barcode
barcode.ResizeTo(250, 100).SaveAsPng("useResizeTo.png");
Imports IronBarCode

' Create barcode
Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.PDF417, 300, 100)

' Export barcode
barcode.SaveAsPng("output.png")

' Resize and export the barcode
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;

// Create barcode
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("12345", BarcodeEncoding.Codabar, 250, 100);

// Export barcode
barcode.SaveAsPng("output.png");

// Resize and export the barcode
barcode.ResizeToMil(20, .73, 200).SaveAsPng("useResizeToMil.png");
Imports IronBarCode

' Create barcode
Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("12345", BarcodeEncoding.Codabar, 250, 100)

' Export barcode
barcode.SaveAsPng("output.png")

' Resize and export the barcode
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);

// Change barcode color
barcode.ChangeBarCodeColor(Color.DarkKhaki);

// Change barcode's background color
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)

' Change barcode color
barcode.ChangeBarCodeColor(Color.DarkKhaki)

' Change barcode's background color
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);

// Change barcode and background color
barcode.ChangeBarCodeColor(Color.DarkCyan);
barcode.ChangeBackgroundColor(Color.PeachPuff);

// Create font for annotation
Font annotationFont = new Font("Candara", FontStyle.Bold, 70);

// Add annotation
barcode.AddAnnotationTextAboveBarcode("IronBarcodeRocks!", annotationFont, Color.DarkOrange);

// Create font for barcode value
Font barcodeValueFont = new Font("Cambria", FontStyle.Regular, 70);

// Add displayed barcode value
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)

' Change barcode and background color
barcode.ChangeBarCodeColor(Color.DarkCyan)
barcode.ChangeBackgroundColor(Color.PeachPuff)

' Create font for annotation
Dim annotationFont As New Font("Candara", FontStyle.Bold, 70)

' Add annotation
barcode.AddAnnotationTextAboveBarcode("IronBarcodeRocks!", annotationFont, Color.DarkOrange)

' Create font for barcode value
Dim barcodeValueFont As New Font("Cambria", FontStyle.Regular, 70)

' Add displayed barcode value
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".

Hairil Hasyimi Bin Omar

Ingeniero de software

Como todos los grandes ingenieros, Hairil es un ávido aprendiz. Está perfeccionando sus conocimientos de C#, Python y Java, y los utiliza para añadir valor a los miembros del equipo de Iron Software. Hairil se unió al equipo de Iron Software desde la Universiti Teknologi MARA de Malasia, donde se licenció en Ingeniería Química y de Procesos.