Cómo personalizar y añadir logotipos a los códigos QR
Los códigos QR han ganado popularidad frente a los códigos de barras tradicionales debido a su mayor capacidad de datos y facilidad de escaneado. Se valoran especialmente en marketing por su capacidad de personalización, que incluye opciones para añadir logotipos, cambiar colores e incorporar otros elementos de marca.
Para satisfacer esta demanda, IronBarcode ofrece un conjunto de funciones para personalizar los códigos QR. Los usuarios pueden crear códigos QR con logotipos, cambiar los esquemas de color y añadir anotaciones. Estas capacidades están potenciadas por IronDrawinguna biblioteca gratuita y de código abierto.
Cómo personalizar y añadir logotipos a los códigos QR
- Descargar la biblioteca C# para personalizar y añadir logotipos a los códigos QR
- Utiliza el
CrearQrCodeConLogo
método para crear un código QR con un logotipo - Utiliza el
CambiarColorCódigoBarra
para añadir colores personalizados al código QR - Añade anotaciones al código QR utilizando la función
AñadirTextoDeAnotaciónSobreCódigoDeBarc
método - Visualizar el valor del código QR mediante el botón
AddBarcodeValueTextBowBarcode
método
Instalar con NuGet
Install-Package BarCode
Crear códigos QR con logotipo Ejemplo
Se requiere un objeto QRCodeLogo para incrustar la imagen del logo mientras se genera el código QR. El método CreateQrCodeWithLogo
también se utiliza para generar un código QR con un 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")
![Código QR con logotipo](/static-assets/barcode/how-to/customize-qr-code-style/QrCodeWithLogo.webp)
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, es necesario rellenar ciertos campos al crear un nuevo objeto QRCodeLogo. A continuación se explican los campos obligatorios:
- Importación de imágenes: Puedes importar imágenes de múltiples formas, como desde AnyBitmap, Stream, Byte Array, filepath relativo, o URI.
- Dimensiones de la imagen: Especifique la anchura y la altura deseadas 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 mayor tamaño viable.
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.
Por último, para exportar el código QR generado, basta con invocar un método de guardado. Dispone de múltiples opciones de exportación, entre ellas archivos de imagen, Corrientes, HTML y PDF.
Cambiar el color del código QR Ejemplo
Además de la posibilidad 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 nuestro IronDrawing los usuarios pueden definir fácilmente sus propios colores utilizando valores RGB o códigos de color hexadecimales y aplicarlos al código QR. Veamos el fragmento de código que demuestra esta función y el código QR resultante que obtenemos 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")
![Código QR con logotipo y color personalizados](/static-assets/barcode/how-to/customize-qr-code-style/coloredQrCodeWithLogo.webp)
El fragmento de código anterior amplía un ejemplo anterior sobre la creación de códigos QR con un logotipo. Demuestra cómo cambiar el color del código QR usando el método ChangeBarCodeColor
, que toma un objeto IronSoftware.Drawing.Color como entrada. Puede crear este objeto utilizando valores RGB, códigos hexadecimales o enums predefinidos. Visite nuestro "Crear color" para saber más.
Ejemplo de anotación de un código QR
Otro aspecto importante a la hora de personalizar o dar estilo a un código QR es añadir anotaciones dentro de la imagen del código QR. Estas anotaciones pueden ser el propio valor del código de barras o un texto personalizado con fines promocionales o de marketing.
Ahora, examinemos la implementación de estos métodos y la imagen de código QR resultante generada por el siguiente fragmento de código.
: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")
![Código QR con anotación](/static-assets/barcode/how-to/customize-qr-code-style/QRCodeWithAnnotation.webp)
IronBarcode proporciona métodos para establecer la posición de la anotación (encima o debajo del código QR) así como su familia y color de fuente. A continuación se indican los métodos disponibles para esta funcionalidad:
- Añadir texto de anotación sobre código QR: Añade texto de anotación sobre el código QR.
AñadirTextoDeAnotaciónDebajoDelCódigo
: Añade texto de anotación debajo del código QR.- Añadir texto del valor del código de barras por encima del código QR: Añade el texto del valor del código de barras sobre el código QR.
- Añadir texto de valor del código de barras debajo del código QR: Añade el texto del valor del código de barras debajo del código QR.
Personalización del valor de la anotación y del código de barras
Los cuatro métodos mencionados aceptan una fuente personalizada como objeto IronSoftware.Drawing.Font, el color como objeto IronSoftware.Drawing.Color y un número 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 especifica, se utilizarán la fuente, el color y el espaciado predeterminados.
En pocas palabras, IronBarcode es una herramienta ideal para crear y personalizar su código QR. Aparte de los métodos directos utilizados para las personalizaciones, IronBarcode también utilizaba nuestra propia IronDrawing como librería de ayuda para todo lo relacionado con el procesamiento de imágenes, lo que suponía ser más estable que depender de otras librerías externas.