Cómo Personalizar y Agregar Logos a Códigos QR en C#

Cómo personalizar y agregar logotipos a códigos QR en C

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

Los códigos QR han ganado popularidad sobre los códigos de barra tradicionales debido a su mayor capacidad de datos y facilidad de escaneo. Son especialmente valorados en marketing por su personalización, incluyendo opciones para añadir logotipos, cambiar colores e incorporar otros elementos de marca.

Para satisfacer esta demanda, IronBarcode ofrece un conjunto de características para personalizar códigos QR. Los usuarios pueden crear códigos QR con logotipos, cambiar los esquemas de color y añadir anotaciones. Estas capacidades son impulsadas por IronDrawing, una biblioteca gratuita y de código abierto.

Inicio rápido: Crear un Código QR con Marca en una Línea

Empiece de inmediato creando un código QR con su logotipo, color personalizado y anotación, todo con una configuración mínima y solo una línea de código de IronBarcode. Ideal para desarrolladores que desean una marca profesional de manera rápida y sin complicaciones.

Nuget IconEmpieza a crear PDF con NuGet ahora:

  1. Instalar IronBarcode con el gestor de paquetes NuGet

    PM > Install-Package BarCode

  2. Copie y ejecute este fragmento de código.

    IronBarCode.QRCodeWriter.CreateQrCodeWithLogo("https://example.com", new IronBarCode.QRCodeLogo("logo.png"), 300).ChangeBarCodeColor(IronSoftware.Drawing.Color.DeepSkyBlue).AddAnnotationTextAboveBarcode("Scan Me", new IronSoftware.Drawing.Font("Verdana",12), IronSoftware.Drawing.Color.White, 5).SaveAsPng("customQR.png");
  3. Despliegue para probar en su entorno real

    Empieza a utilizar IronBarcode en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer


Ejemplo de creación de códigos QR con logotipo

Se requiere un objeto QRCodeLogo para incrustar la imagen del logotipo mientras se genera el código QR. El método CreateQrCodeWithLogo también se utiliza para generar un código QR con logotipo.

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

AnyBitmap qrlogo = AnyBitmap.FromFile("ironbarcode_top.webp");

QRCodeLogo logo = new QRCodeLogo(qrlogo, 0, 0, 20f);

GeneratedBarcode QrCodeWithLogo = QRCodeWriter.CreateQrCodeWithLogo("https://ironsoftware.com/csharp/barcode/", logo, 250);

QrCodeWithLogo.SaveAsPng("QrCodeWLogo2.png");
Imports IronBarCode
Imports IronSoftware.Drawing

Private qrlogo As AnyBitmap = AnyBitmap.FromFile("ironbarcode_top.webp")

Private logo As New QRCodeLogo(qrlogo, 0, 0, 20F)

Private QrCodeWithLogo As GeneratedBarcode = QRCodeWriter.CreateQrCodeWithLogo("https://ironsoftware.com/csharp/barcode/", logo, 250)

QrCodeWithLogo.SaveAsPng("QrCodeWLogo2.png")
$vbLabelText   $csharpLabel
Código QR con logotipo

Examinemos el código QR de salida generado por el código anterior. Podemos ver que el código QR presenta un logotipo en el centro con bordes redondeados.

Para personalizar el logotipo, necesita completar ciertos campos al crear un nuevo objeto QRCodeLogo. Aquí están las explicaciones para los campos requeridos:

  • Importación de Imagen: Puede importar imágenes de múltiples maneras, como desde AnyBitmap, Stream, Byte Array, ruta de archivo relativa o URI.
  • Dimensiones de Imagen: Especifique el ancho y alto deseados de la imagen del logotipo en píxeles. Si la imagen es demasiado grande para que el código QR sea legible, se lanzará una excepción. Utilice el valor 0 para determinar automáticamente el tamaño viable más grande.
  • Esquinas de la Imagen: Establezca el radio de las esquinas redondeadas de la imagen del logotipo. Utilice el valor predeterminado 0 para las esquinas cuadradas.

Finalmente, para exportar el código QR generado, simplemente invoque un método de guardado. Tiene múltiples opciones de exportación, incluyendo archivos de imagen, Streams, HTML y PDF.

Ejemplo de cambio de color de código QR

Además de añadir un logotipo a su código QR, IronBarcode también permite a los usuarios personalizar aún más su código QR cambiando su color. Con nuestra biblioteca IronDrawing, los usuarios pueden definir fácilmente sus propios colores utilizando valores RGB o códigos de color Hex y aplicarlos al código QR. Veamos el fragmento de código que demuestra esta característica y el código QR resultante obtenido al ejecutar este código.

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

AnyBitmap qrlogo = AnyBitmap.FromFile("ironbarcode_top.webp");

QRCodeLogo logo = new QRCodeLogo(qrlogo, 0, 0, 20f);

IronSoftware.Drawing.Color ColorFromRgb = new IronSoftware.Drawing.Color(51, 51, 153);

GeneratedBarcode QrCodeWithLogo = QRCodeWriter.CreateQrCodeWithLogo("https://ironsoftware.com/csharp/barcode/", logo, 250);
GeneratedBarcode QrCodeWithLogoAndColor = QrCodeWithLogo.ChangeBarCodeColor(ColorFromRgb);
QrCodeWithLogoAndColor.SaveAsPng("ColorQrCodeWithLogo.png");
Imports IronBarCode
Imports IronSoftware.Drawing

Private qrlogo As AnyBitmap = AnyBitmap.FromFile("ironbarcode_top.webp")

Private logo As New QRCodeLogo(qrlogo, 0, 0, 20F)

Private ColorFromRgb As New IronSoftware.Drawing.Color(51, 51, 153)

Private QrCodeWithLogo As GeneratedBarcode = QRCodeWriter.CreateQrCodeWithLogo("https://ironsoftware.com/csharp/barcode/", logo, 250)
Private QrCodeWithLogoAndColor As GeneratedBarcode = QrCodeWithLogo.ChangeBarCodeColor(ColorFromRgb)
QrCodeWithLogoAndColor.SaveAsPng("ColorQrCodeWithLogo.png")
$vbLabelText   $csharpLabel
Código QR con logotipo y color personalizados

El fragmento de código anterior extiende un ejemplo previo de creación de códigos QR con logotipo. Demuestra cómo cambiar el color del código QR utilizando el método ChangeBarCodeColor, que toma un objeto Iron Software.Drawing.Color como entrada. Puede crear este objeto usando valores RGB, códigos Hex o enums predefinidos. Visite nuestro código de ejemplo "Crear Color" para aprender más.

Ejemplo de agregar anotación de código QR

Otro aspecto importante de personalizar o estilizar un código QR es añadir anotaciones dentro de la imagen del código QR. Estas anotaciones pueden ser el valor del código de barras en sí o texto personalizado para fines promocionales o de marketing.

Ahora, examinemos la implementación de estos métodos y la imagen del código QR resultante generada por el fragmento de código a continuación.

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

AnyBitmap qrlogo = AnyBitmap.FromFile("ironbarcode_top.webp");

QRCodeLogo logo = new QRCodeLogo(qrlogo, 0, 0, 20f);

Color colorForBarcode = new Color(51, 51, 153); // color from RGB
Color annotationAboveBarcodeColor = new Color("#176feb");  // color from Hex
Font annotationAboveBarcodeFont = new Font("Candara", FontStyle.Bold, 15);
Color barcodeValueBelowBarcodeColor = new Color("#6e53bb");
Font barcodeValueBelowBarcodeFont = new Font("Cambria", FontStyle.Regular, 15);

GeneratedBarcode qrCodeWithLogo = QRCodeWriter.CreateQrCodeWithLogo("https://ironsoftware.com/csharp/barcode/", logo, 250);
GeneratedBarcode qrCodeWithLogoAndColor = qrCodeWithLogo.ChangeBarCodeColor(colorForBarcode);
GeneratedBarcode qrCodeWithAnnotation = qrCodeWithLogoAndColor.AddAnnotationTextAboveBarcode("IronBarcodeRocks!", annotationAboveBarcodeFont, annotationAboveBarcodeColor, 2).AddBarcodeValueTextBelowBarcode(barcodeValueBelowBarcodeFont, barcodeValueBelowBarcodeColor, 2);
qrCodeWithAnnotation.SaveAsPng("QRCodeWithAnnotation.png");
Imports IronBarCode
Imports IronSoftware.Drawing

Private qrlogo As AnyBitmap = AnyBitmap.FromFile("ironbarcode_top.webp")

Private logo As New QRCodeLogo(qrlogo, 0, 0, 20F)

Private colorForBarcode As New Color(51, 51, 153) ' color from RGB
Private annotationAboveBarcodeColor As New Color("#176feb") ' color from Hex
Private annotationAboveBarcodeFont As New Font("Candara", FontStyle.Bold, 15)
Private barcodeValueBelowBarcodeColor As New Color("#6e53bb")
Private barcodeValueBelowBarcodeFont As New Font("Cambria", FontStyle.Regular, 15)

Private qrCodeWithLogo As GeneratedBarcode = QRCodeWriter.CreateQrCodeWithLogo("https://ironsoftware.com/csharp/barcode/", logo, 250)
Private qrCodeWithLogoAndColor As GeneratedBarcode = qrCodeWithLogo.ChangeBarCodeColor(colorForBarcode)
Private qrCodeWithAnnotation As GeneratedBarcode = qrCodeWithLogoAndColor.AddAnnotationTextAboveBarcode("IronBarcodeRocks!", annotationAboveBarcodeFont, annotationAboveBarcodeColor, 2).AddBarcodeValueTextBelowBarcode(barcodeValueBelowBarcodeFont, barcodeValueBelowBarcodeColor, 2)
qrCodeWithAnnotation.SaveAsPng("QRCodeWithAnnotation.png")
$vbLabelText   $csharpLabel
Código QR con anotación

IronBarcode proporciona métodos para establecer la posición de la anotación (arriba o abajo del código QR), así como su familia de fuentes y color. A continuación se muestran los métodos disponibles para esta funcionalidad:

  • AddAnnotationTextAboveBarcode: Añade texto de anotación arriba del código QR.
  • AddAnnotationTextBelowBarcode: Añade texto de anotación debajo del código QR.
  • AddBarcodeValueTextAboveBarcode: Añade el texto del valor del código de barras arriba del código QR.
  • AddBarcodeValueTextBelowBarcode: Añade el texto del valor del código de barras debajo del código QR.

Personalización de la anotación y el valor del código de barras

Los cuatro métodos mencionados anteriormente aceptan una fuente personalizada como un objeto Iron Software.Drawing.Font, un color como un objeto Iron Software.Drawing.Color, y un entero para especificar el espaciado superior e inferior del texto en píxeles. Tenga en cuenta que estos parámetros son opcionales; si no se especifican, se usará la fuente, el color y el espaciado predeterminados.

En pocas palabras, IronBarcode es una herramienta ideal para crear y personalizar su código QR. Además de los métodos directos utilizados para las personalizaciones, IronBarcode también utiliza nuestra propia IronDrawing como una biblioteca auxiliar para cualquier cosa relacionada con el procesamiento de imágenes, que se supone es más estable que depender de otras bibliotecas externas.

Preguntas Frecuentes

¿Cómo puedo crear un código QR personalizado con un logotipo en .NET?

Puedes crear un código QR personalizado con un logotipo en .NET usando el método CreateQrCodeWithLogo de la biblioteca IronBarcode. Esto te permite incrustar un logotipo dentro del código QR, y puedes personalizar las dimensiones y los estilos de las esquinas para una mejor estética.

¿Qué pasos implica personalizar el color de un código QR?

Para personalizar el color de un código QR, usa el método ChangeBarCodeColor de IronBarcode. Esto te permite aplicar colores personalizados usando valores RGB o códigos de color Hex, proporcionando una amplia gama de opciones de personalización vibrante.

¿Cómo puedo agregar anotaciones de texto a un código QR?

Puedes agregar anotaciones de texto a un código QR usando los métodos AddAnnotationTextAboveBarcode y AddBarcodeValueTextBelowBarcode de IronBarcode. Estos métodos te permiten personalizar la fuente y el color del texto para una mejor legibilidad y branding.

¿Cuáles son las mejores prácticas para asegurar la legibilidad de un código QR?

Para asegurar la legibilidad de un código QR, IronBarcode proporciona guías sobre cómo mantener el tamaño de imagen y el radio de las esquinas apropiados. Esto ayuda a preservar la integridad del código QR y asegura que sea fácilmente escaneable.

¿Cómo puedo exportar mi código QR personalizado?

Los códigos QR personalizados creados con IronBarcode pueden exportarse en múltiples formatos, incluidos archivos de imagen, PDF, Streams y HTML, usando varios métodos de guardado disponibles en la biblioteca.

¿Qué papel juega la biblioteca IronDrawing en la personalización de códigos QR?

La biblioteca IronDrawing es esencial para manejar tareas de procesamiento de imágenes dentro de IronBarcode, permitiendo la personalización de códigos QR como cambios de color e integración de logotipos.

¿Cuáles son los beneficios de usar códigos QR con estilos personalizados?

Los códigos QR con estilos personalizados, creados usando IronBarcode, ofrecen un mayor atractivo visual y alineación de marca. Esto mejora el compromiso del usuario y la efectividad del marketing al integrar logotipos y esquemas de color específicos.

¿Por qué se considera IronBarcode eficiente para la generación de códigos QR?

IronBarcode es eficiente para la generación de códigos QR debido a sus características comprensivas como la incrustación de logotipos, personalización de colores y adición de anotaciones, todo mientras se mantiene alta legibilidad y estándares estéticos.

Hairil Hasyimi Bin Omar
Ingeniero de Software
Como todos los grandes ingenieros, Hairil es un ávido aprendiz. Está refinando su conocimiento de C#, Python y Java, usando ese conocimiento para agregar valor a los miembros del equipo en Iron Software. Hairil se unió al equipo de Iron Software desde la Universiti Teknologi MARA en Malasia, donde se ...
Leer más
¿Listo para empezar?
Nuget Descargas 1,979,979 | Version: 2025.11 recién lanzado