Saltar al pie de página
USO DE IRONBARCODE

Cómo Hacer un Código QR para un Enlace (Tutorial de C#)

1.0 Introducción

El Código de Respuesta Rápida, o código QR, tiene sus raíces en el sector automotriz japonés. También se le conoce como el Símbolo QR, Gráfico QR o Gráfico de Código QR. Masahiro Hara lo creó en 1994, y su aplicación inicial fue como una herramienta rápida y fácil para monitorear el progreso de los vehículos mientras se montaban en las fábricas. Desde entonces, el uso de los códigos QR como un sustituto del código de barras ha crecido significativamente fuera de la industria de fabricación de automóviles. Se debe a su mayor velocidad de lectura y capacidad de almacenamiento. Los códigos QR se pueden usar para intercambiar y almacenar información con fines de marketing y para sitios y cuentas de redes sociales, además de rastrear e identificar productos. El código QR estático que se genera desde la aplicación se puede escanear con la aplicación de cámara.

2.0 Características de IronBarcode

Con la Biblioteca de Códigos QR de IronBarcode, crear códigos QR dinámicos es simple. Con solo unas pocas líneas de código, esta biblioteca sencilla puede crear rápidamente un código QR. IronBarcode puede generar códigos QR de alta calidad y facilita la lectura de códigos personalizados por el escáner de Códigos QR.

  • La mayoría de los formatos de códigos de barras y estándares de QR, incluidos UPC A/E, EAN 8/13, Code 39/93/128, ITF, MSI, RSS 14/Expandido, Databar y CodaB, pueden ser leídos y escritos por IronBarcode.
  • IronBarcode puede leer escaneos y frames de video en vivo, corrigiendo rotación, ruido, distorsión y sesgo. IronBarcode preprocesa automáticamente las imágenes de códigos de barras para aumentar la eficiencia y precisión de lectura mientras crea códigos QR. Permiten la edición de contenido, los códigos QR dinámicos son particularmente populares.
  • IronBarcode puede ejecutarse en varios núcleos e hilos (particularmente útil para servidores de procesamiento por lotes).
  • IronBarcode puede localizar automáticamente uno o más códigos de barras en documentos de una y varias páginas.
  • IronBarcode funciona con ambas implementaciones de .NET Framework y .NET Core, y soporta arquitecturas de 32 y 64 bits.
  • En plataformas PC y móviles, IronBarcode admite aplicaciones de consola, escritorio, nube y web.
  • PDF, JPG, TIFF, GIF, BMP, PNG y HTML son solo algunos de los formatos de archivo y flujo que IronBarcode puede producir para imágenes de códigos QR.

3.0 Creación de una imagen de código QR

3.1 Uso de IronBarcode desde la aplicación de consola/Windows

Las secciones siguientes de este artículo presentan un ejemplo para demostrar cuán fácilmente nuestra biblioteca genera códigos QR.

Paso 1. Crear un nuevo proyecto para crear códigos QR

Abre Visual Studio y haz clic en la opción de menú Archivo para Nuevo Proyecto.

Haz clic en Siguiente después de seleccionar la plantilla Aplicación de Consola en la caja que aparece.

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 1

Introduce cualquier nombre de proyecto que elijas (por ejemplo, Generador de Códigos QR) en el área de texto Nombre del Proyecto, y luego introduce la ubicación del nuevo proyecto en el campo Ubicación. Haz clic en el botón Siguiente para continuar después de eso.

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 2

Selecciona un Marco de Trabajo Dot NET (aquí, estamos usando Dot NET 6.0 (Soporte a largo plazo)) desde la opción desplegable Marco, luego haz clic en Crear.

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 3

Paso 2. Instalar la biblioteca IronBarcode

Descarga la biblioteca IronBarcode necesaria ingresando el siguiente código en la consola del administrador de paquetes:

Install-Package BarCode

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 4

Alternativamente, podemos realizar una búsqueda usando el gestor de paquetes NuGet y descargar el paquete "IronBarcode", que enumerará todos los resultados y nos permitirá elegir el que necesitamos descargar.

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 5

Paso 3. Generar una imagen de código QR

IronBarcode nos permite crear un código QR con unas pocas líneas de código. Usa el método QRCodeWriter.CreateQrCode para crear un nuevo código QR como se muestra en el siguiente código:

using IronBarCode;

// Create a QR code with a specified URL and dimensions,
// and save it as a PNG file.
QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng("NewQR.png");
using IronBarCode;

// Create a QR code with a specified URL and dimensions,
// and save it as a PNG file.
QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng("NewQR.png");
Imports IronBarCode

' Create a QR code with a specified URL and dimensions,
' and save it as a PNG file.
QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0).SaveAsPng("NewQR.png")
$vbLabelText   $csharpLabel

Los datos que se codificarán en la imagen del código (que puede ser una URL o un flujo) son el único parámetro obligatorio para el método CreateQrCode. Además, el método toma tres parámetros opcionales:

  • Las dimensiones predeterminadas del gráfico son 500 píxeles de ancho por 500 píxeles de alto.
  • Un nivel de corrección de errores. Bajo, Medio, Alto y Máximo son los cuatro niveles de corrección de errores ofrecidos por IronBarcode. El método CreateQrCode utiliza por defecto el nivel más alto de corrección (QRCodeWriter.QrErrorCorrectionLevel.Highest).
  • El número de versión del código QR. Para una lista de variaciones aceptables, visita esta página. El método se ajusta para usar el número de versión correcto basado en los datos que codificará si el valor es 0 (el valor predeterminado).

El ejemplo anterior utiliza el nivel medio de corrección de errores para producir un gráfico de 500 por 500 píxeles que crea un código QR personalizado. A continuación, podemos guardar los códigos QR generados como un archivo PNG en una ubicación de archivo especificada llamando al método SaveAsPng.

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 6

Luego veremos un ejemplo de un caso de uso donde un usuario o empresa quiere agregar un logotipo de empresa a un código QR generado. Para lograr esto, se utiliza el método QrCodeWriter.CreateQrCodeWithLogo en el ejemplo de código a continuación.

using System.Drawing; // Necessary for Color type

// Create a QR code with a logo included.
var QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("www.google.com", "qrWithlogo.png", 500);

// Customize the color of the QR code using the ChangeBarCodeColor method.
QRWithLogo.ChangeBarCodeColor(Color.DarkRed);

// Save the customized QR code as a new PNG file.
QRWithLogo.SaveAsPng("NewQR_Code.png");
using System.Drawing; // Necessary for Color type

// Create a QR code with a logo included.
var QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("www.google.com", "qrWithlogo.png", 500);

// Customize the color of the QR code using the ChangeBarCodeColor method.
QRWithLogo.ChangeBarCodeColor(Color.DarkRed);

// Save the customized QR code as a new PNG file.
QRWithLogo.SaveAsPng("NewQR_Code.png");
Imports System.Drawing ' Necessary for Color type

' Create a QR code with a logo included.
Private QRWithLogo = QRCodeWriter.CreateQrCodeWithLogo("www.google.com", "qrWithlogo.png", 500)

' Customize the color of the QR code using the ChangeBarCodeColor method.
QRWithLogo.ChangeBarCodeColor(Color.DarkRed)

' Save the customized QR code as a new PNG file.
QRWithLogo.SaveAsPng("NewQR_Code.png")
$vbLabelText   $csharpLabel

En el ejemplo anterior, codificamos el valor de cadena de la URL "www.google.com" en un nuevo código QR que incrusta una imagen de ese sitio web en una ubicación de archivo dada.

Los gráficos se incluyen en el código QR anterior. El logotipo se posiciona automáticamente al tamaño y se dimensiona para coincidir con la cuadrícula del código QR para que el código puro aún pueda ser leído. También podemos personalizar el color del código de barras de la dirección QR usando el método ChangeBarCodeColor, que ofrece una gama de colores de códigos que podemos usar en el código QR. Uno usa tipos de la clase Color, mientras que el otro hace uso de la notación de color hexadecimal HTML como sigue:

QRWithLogo.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#8B0000"));
QRWithLogo.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#8B0000"));
QRWithLogo.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#8B0000"))
$vbLabelText   $csharpLabel

La línea de código anterior especifica el color rojo oscuro del código de barras. Luego, como el código indica, lo guardamos como un archivo PNG. También podemos guardar códigos QR en otros formatos de archivo como HTML:

QRWithLogo.SaveAsHtmlFile("test.html");
QRWithLogo.SaveAsHtmlFile("test.html");
QRWithLogo.SaveAsHtmlFile("test.html")
$vbLabelText   $csharpLabel

El resultado del código fuente anterior se muestra en la imagen a continuación.

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 7

Los códigos QR se pueden guardar en otros formatos de archivo como HTML:

QRWithLogo.SaveAsHtmlFile("test.html");
QRWithLogo.SaveAsHtmlFile("test.html");
QRWithLogo.SaveAsHtmlFile("test.html")
$vbLabelText   $csharpLabel

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 8

Uso del sitio web generador de códigos QR IronBarcode

IronBarcode también se puede usar en aplicaciones web. El código de ejemplo de MVC Dot Net core 6.0 se muestra a continuación.

public IActionResult Index()
{
    // Generate a QR code for www.google.com
    var barcode = QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0);

    // Save the QR code as a PNG file
    barcode.SaveAsPng("Barcode.png");

    // Get the file path to the saved QR code
    var filePath = Path.Combine(Directory.GetCurrentDirectory(), "Barcode.png");

    // Return the file as a physical file result to be downloaded
    return PhysicalFile(filePath, "image/png", "Barcode.png");
}
public IActionResult Index()
{
    // Generate a QR code for www.google.com
    var barcode = QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0);

    // Save the QR code as a PNG file
    barcode.SaveAsPng("Barcode.png");

    // Get the file path to the saved QR code
    var filePath = Path.Combine(Directory.GetCurrentDirectory(), "Barcode.png");

    // Return the file as a physical file result to be downloaded
    return PhysicalFile(filePath, "image/png", "Barcode.png");
}
Public Function Index() As IActionResult
	' Generate a QR code for www.google.com
	Dim barcode = QRCodeWriter.CreateQrCode("www.google.com", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0)

	' Save the QR code as a PNG file
	barcode.SaveAsPng("Barcode.png")

	' Get the file path to the saved QR code
	Dim filePath = Path.Combine(Directory.GetCurrentDirectory(), "Barcode.png")

	' Return the file as a physical file result to be downloaded
	Return PhysicalFile(filePath, "image/png", "Barcode.png")
End Function
$vbLabelText   $csharpLabel

El código que usamos para el programa de Windows/consola es el mismo que se proporciona arriba. El código anterior primero genera un archivo de código QR antes de devolverlo. Luego, el usuario puede descargar el código QR como un archivo PNG. También podemos hacerlo disponible para su uso en dispositivos móviles y formularios en línea.

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 9

Cómo Hacer un Código QR para un Enlace (Tutorial C#): Figura 10

Para más tutoriales de código para IronBarcode haz clic aquí.

4.0 Conclusión

Una de las bibliotecas más efectivas para crear e identificar códigos de barras es IronBarcode. Además, es una de las bibliotecas más rápidas para crear y leer códigos de barras. Diferentes sistemas operativos son compatibles con la biblioteca.

Es simple de desarrollar y admite una amplia gama de formatos de código de barras. Podemos alterar el color, el ancho de línea, la altura, el texto del código de barras y más.

Puedes encontrar la información de licencias aquí. Está disponible tanto una biblioteca generadora de códigos QR gratuita para licencia de desarrollador como una edición premium de IronBarcode. Incluye soporte y actualizaciones gratuitas por un año.

Los usuarios también pueden beneficiarse de [Iron Suite](Iron Suite), un suite de 5 bibliotecas profesionales de ASP.NET core que incluyen IronBarcode, IronXL, IronPDF y más.

Preguntas Frecuentes

¿Cuál es la importancia de los códigos QR en las aplicaciones modernas?

Los códigos QR proporcionan una forma rápida y eficiente de almacenar e intercambiar información, lo que los hace esenciales en muchas aplicaciones modernas como marketing, seguimiento de productos y sistemas de pago. IronBarcode facilita la generación y personalización de códigos QR para estas aplicaciones.

¿Cómo puedo crear un código QR para un enlace web en C#?

Puedes crear un código QR para un enlace web usando IronBarcode llamando al método QRCodeWriter.CreateQrCode con la URL como parámetro. Personaliza la apariencia del código QR y guárdalo en formatos como PNG o PDF.

¿Cuáles son las ventajas de usar IronBarcode para la generación de códigos QR?

IronBarcode ofrece generación de códigos QR de alta calidad con características personalizables como cambios de color y la inserción de logotipos. Admite varios formatos de código de barras y salidas de archivo, lo que lo hace versátil para diferentes aplicaciones.

¿Cómo integro la generación de códigos QR en una aplicación web .NET?

Para integrar la generación de códigos QR en una aplicación web .NET, usa IronBarcode con MVC Dot Net core 6.0. La biblioteca te permite generar códigos QR dinámicamente dentro de tu aplicación web y soporta varios formatos de descarga.

¿Puedo personalizar las dimensiones del código QR y los niveles de corrección de errores usando la biblioteca?

Sí, IronBarcode te permite personalizar tanto las dimensiones como los niveles de corrección de errores de los códigos QR. Usa el método CreateQrCode con parámetros específicos para ajustar estas características según tus necesidades.

¿Cómo agrego un logo a un código QR usando C#?

Para agregar un logo a un código QR en C#, usa el método QRCodeWriter.CreateQrCodeWithLogo de IronBarcode. Esta característica te permite insertar un logo dentro del código QR, mejorando la visibilidad de la marca mientras se mantiene la legibilidad del código.

¿Qué consejos de solución de problemas están disponibles para los problemas de generación de códigos QR?

Si encuentras problemas con la generación de códigos QR, asegúrate de que la biblioteca esté correctamente instalada a través de NuGet y que todos los métodos se usen como se documenta. Verifica cualquier problema de compatibilidad con la configuración de tu proyecto o la versión de .NET.

¿Qué formatos de archivo son compatibles para guardar los códigos QR generados con la biblioteca?

IronBarcode admite guardar códigos QR en una variedad de formatos de archivo, incluidos PDF, JPG, TIFF, GIF, BMP, PNG y HTML, proporcionando flexibilidad para diferentes casos de uso.

¿Hay una versión gratuita disponible para la biblioteca de generación de códigos QR?

Sí, IronBarcode ofrece una versión gratuita de su biblioteca de generación de códigos QR para desarrolladores. También hay una versión premium que incluye funciones adicionales, soporte y actualizaciones.

Jordi Bardia
Ingeniero de Software
Jordi es más competente en Python, C# y C++. Cuando no está aprovechando sus habilidades en Iron Software, está programando juegos. Compartiendo responsabilidades para pruebas de productos, desarrollo de productos e investigación, Jordi agrega un valor inmenso a la mejora continua del producto. La experiencia variada lo mantiene ...
Leer más