Saltar al pie de página
USANDO IRONQR

Generador de códigos QR NuGet: Generación de códigos QR en C# con sólo unas pocas líneas de código

Generar códigos QR en aplicaciones .NET nunca ha sido tan sencillo. Con el paquete NuGet adecuado, los desarrolladores pueden crear códigos QR, personalizar su aspecto y guardarlos en varios formatos de salida con solo unas líneas de código. IronQR ofrece generación de códigos QR de nivel empresarial con compatibilidad multiplataforma para .NET Core, .NET Framework y las versiones modernas de .NET.

Este tutorial muestra cómo instalar el paquete NuGet de IronQR y empezar a generar códigos QR inmediatamente. Tanto si se trata de crear sistemas de inventario, plataformas de venta de entradas para eventos o aplicaciones de marketing, IronQR proporciona las herramientas necesarias para la implementación profesional de códigos QR.

Empiece con IronQR ahora.
green arrow pointer

¿Cómo instalar un paquete NuGet con código QR?

La instalación de IronQR a través del gestor de paquetes NuGet se realiza en cuestión de segundos. Abra la consola del gestor de paquetes NuGet en Visual Studio y ejecute el siguiente comando, o utilice el comando dotnet add package para entornos CLI:

Install-Package IronQR

El paquete NuGet gestiona automáticamente todas las dependencias, garantizando la compatibilidad con los marcos de trabajo de destino. IronQR es compatible con .NET Framework 4.6.2+, .NET Core 2.0+ y .NET 5-10, lo que la convierte en una biblioteca .NET versátil para cualquier proyecto de Visual Studio.

¿Cómo puedo generar mi primer código QR?

La creación de su primer código QR NuGet requiere un código fuente mínimo. La clase QrWriter se encarga de la generación de códigos QR y códigos de barras con valores predeterminados razonables:

using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        // Generate a QR code from text data
        QrCode myQr = QrWriter.Write("Hello World");
        // Save QR code as bitmap image
        AnyBitmap qrImage = myQr.Save();
        // Export to PNG file
        qrImage.SaveAs("hello-qr.png");
    }
}
using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        // Generate a QR code from text data
        QrCode myQr = QrWriter.Write("Hello World");
        // Save QR code as bitmap image
        AnyBitmap qrImage = myQr.Save();
        // Export to PNG file
        qrImage.SaveAs("hello-qr.png");
    }
}
$vbLabelText   $csharpLabel

Salida de código QR

Generador de códigos QR NuGet: Generar códigos QR en C# con sólo unas pocas líneas de código: Imagen 1 - Salida QR simple

El método QrWriter.Write() acepta datos de cadena y devuelve un objeto QrCode que contiene el símbolo QR. El método Save() convierte esto en un AnyBitmap, que admite la codificación en varios formatos de imagen o incluso la exportación de datos vectoriales para una ruta XAML. Este enfoque funciona a la perfección en Windows, macOS y Linux sin dependencias específicas de la plataforma, a diferencia de las bibliotecas que dependen de System.Drawing, que a partir de .NET 6 son exclusivas de Windows.

¿Qué niveles de corrección de errores hay disponibles?

Los códigos QR admiten cuatro niveles de corrección de errores que determinan cuánto daño puede sufrir un código sin dejar de ser escaneable. IronQR admite la codificación de todos los niveles a través de la clase QrOptions:

NivelCapacidad de recuperaciónLo mejor para
L (Bajo)~7%Entornos limpios, datos al máximo
M (Medio)~15%Uso general (por defecto)
Q (Cuartil)~25%Aplicaciones industriales
H (alto)~30%Logotipos, señalización exterior
using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        // Configure high error correction level
        var options = new QrOptions(QrErrorCorrectionLevel.High);
        // Generate QR code with options
        QrCode qr = QrWriter.Write("https://ironsoftware.com", options);
        AnyBitmap image = qr.Save();
        image.SaveAs("high-correction-qr.png");
    }
}
using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        // Configure high error correction level
        var options = new QrOptions(QrErrorCorrectionLevel.High);
        // Generate QR code with options
        QrCode qr = QrWriter.Write("https://ironsoftware.com", options);
        AnyBitmap image = qr.Save();
        image.SaveAs("high-correction-qr.png");
    }
}
$vbLabelText   $csharpLabel

Resultado

Generador de códigos QR NuGet: Generar códigos QR en C# con sólo unas pocas líneas de código: Imagen 2 - QR con alto nivel de corrección

Los niveles más altos de corrección de errores crean símbolos QR más densos con más módulos en bruto, lo que permite que el código siga siendo legible incluso cuando está parcialmente oscurecido o dañado.

¿Cómo personalizo la apariencia del código QR?

IronQR proporciona amplias opciones de estilo a través de QrStyleOptions, permitiendo colores personalizados, dimensiones (establecidas como un int), márgenes e incrustación de logotipos:

using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        // Create styled QR code with custom colors
        var styleOptions = new QrStyleOptions
        {
            Dimensions = 300,
            Margins = 10,
            Color = Color.DarkBlue,
            BackgroundColor = Color.White
        };
        QrCode qr = QrWriter.Write("https://example.com");
        AnyBitmap styledImage = qr.Save(styleOptions);
        styledImage.SaveAs("styled-qr.png");
    }
}
using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        // Create styled QR code with custom colors
        var styleOptions = new QrStyleOptions
        {
            Dimensions = 300,
            Margins = 10,
            Color = Color.DarkBlue,
            BackgroundColor = Color.White
        };
        QrCode qr = QrWriter.Write("https://example.com");
        AnyBitmap styledImage = qr.Save(styleOptions);
        styledImage.SaveAs("styled-qr.png");
    }
}
$vbLabelText   $csharpLabel

Salida QR estilizada

Generador de códigos QR NuGet: Genere códigos QR en C# con sólo unas pocas líneas de código: Imagen 3 - Código QR estilizado

Añadir logotipos a los códigos QR mejora el reconocimiento de la marca. El sistema de estilización posiciona automáticamente los logotipos al tiempo que mantiene la escaneabilidad, una ventaja significativa sobre las alternativas de bibliotecas de código abierto que requieren cálculos manuales.

¿Cómo guardar códigos QR en diferentes formatos de salida?

IronQR admite varios formatos de salida, como PNG, JPEG, GIF, TIFF, BMP y SVG. El método SaveAs detecta automáticamente el formato a partir de la extensión del archivo:

using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        QrCode qr = QrWriter.Write("Format demo");
        AnyBitmap image = qr.Save();
        // Save to different PNG file formats
        image.SaveAs("qr-output.png");
        image.SaveAs("qr-output.jpg");
        image.SaveAs("qr-output.gif");
        // Get as byte array for streams
        byte[] pngBytes = image.ExportBytes();
    }
}
using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        QrCode qr = QrWriter.Write("Format demo");
        AnyBitmap image = qr.Save();
        // Save to different PNG file formats
        image.SaveAs("qr-output.png");
        image.SaveAs("qr-output.jpg");
        image.SaveAs("qr-output.gif");
        // Get as byte array for streams
        byte[] pngBytes = image.ExportBytes();
    }
}
$vbLabelText   $csharpLabel

Múltiples formatos de salida de códigos QR

Generador de códigos QR NuGet: Generar códigos QR en C# con sólo unas pocas líneas de código: Imagen 4 - Códigos QR guardados como diferentes formatos de archivo

Para incrustar códigos QR en documentos PDF, IronQR proporciona el método StampToExistingPdfPage, que permite la colocación directa de códigos QR en documentos existentes sin bibliotecas adicionales.

¿Cómo se compara IronQR con QRCoder?

La biblioteca QRCoder es una popular biblioteca de código abierto para la generación de códigos QR. Sin embargo, los desarrolladores que antes tenían que ejecutar install package qrcoder a menudo encontraban engorroso el proceso de varios pasos que implicaba llamadas a qrcodeimage qrcode.getgraphic. A diferencia de algunas bibliotecas comunitarias que pueden haber sido actualizadas por última vez hace meses, IronQR ofrece varias ventajas para el desarrollo empresarial:

CaracterísticasIronQRQRCoder
MultiplataformaCompatibilidad total con .NET Core/5+Sólo para Windows para la representación de mapas de bits
Lectura con ML99.9% de precisión en la detecciónSólo generación
Integración PDFSoporte nativo de estampaciónRequiere bibliotecas adicionales
Soporte comercialasistencia técnica 24/5Sólo para la comunidad

Aunque el paquete QRCoder funciona bien para la generación básica, el modelo de aprendizaje automático de IronQR proporciona una lectura superior de códigos QR desde cualquier ángulo, algo fundamental para las aplicaciones que procesan imágenes enviadas por los usuarios. El nuevo enfoque QRCodeGenerator de IronQR (QrWriter) requiere menos líneas de código que el proceso de varios pasos de QRCoder, que incluye las clases de renderización QRCodeGenerator, QRCodeData y QRCode.

¿Cómo puedo codificar datos binarios?

Además de texto, IronQR permite codificar matrices de bytes para datos de códigos QR binarios:

using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        // Encode binary data
        byte[] binaryData = System.Text.Encoding.UTF8.GetBytes("Binary content");
        QrCode qr = QrWriter.Write(binaryData);
        qr.Save().SaveAs("binary-qr.png");
    }
}
using IronQr;
using IronSoftware.Drawing;
class Program
{
    static void Main(string[] args)
    {
        // Encode binary data
        byte[] binaryData = System.Text.Encoding.UTF8.GetBytes("Binary content");
        QrCode qr = QrWriter.Write(binaryData);
        qr.Save().SaveAs("binary-qr.png");
    }
}
$vbLabelText   $csharpLabel

Resultado

Generador de códigos QR NuGet: Generar códigos QR en C# con sólo unas pocas líneas de código: Imagen 5 - Código QR codificado en binario

Esta capacidad permite codificar cargas útiles cifradas, objetos serializados o cualquier contenido binario dentro de símbolos QR.

Conclusión

IronQR transforma la generación de códigos QR de una tarea compleja a una integración sencilla. Con instalación NuGet, compatibilidad entre plataformas y funciones para incrustar códigos en PDF y lectura potenciada por ML, proporciona todas las funciones básicas necesarias para aplicaciones .NET profesionales.

La intuitiva API de la biblioteca permite a los desarrolladores generar códigos QR, aplicar estilos personalizados y exportar a múltiples formatos sin tener que lidiar con las limitaciones de la plataforma o la escasa documentación.

Comience con una versión de prueba gratuita para explorar el conjunto completo de características, o compre una licencia para el despliegue de producción con soporte comercial.

Preguntas Frecuentes

¿Cómo puedo generar códigos QR en C# utilizando IronQR?

Puede generar códigos QR en C# instalando el paquete NuGet de IronQR. Permite crear y personalizar códigos QR con solo unas líneas de código.

¿Con qué plataformas es compatible IronQR?

IronQR ofrece soporte multiplataforma, compatible con .NET Core, .NET Framework y las versiones modernas de .NET.

¿Puedo personalizar la apariencia de los códigos QR con IronQR?

Sí, IronQR le permite personalizar el aspecto de los códigos QR, incluidos los colores y el diseño, para adaptarlos a sus necesidades específicas.

¿Qué formatos de salida se admiten para guardar códigos QR?

Con IronQR, puedes guardar códigos QR en múltiples formatos de salida, lo que lo hace versátil para diversas aplicaciones.

¿Es IronQR compatible con la incrustación de PDF para códigos QR?

Sí, IronQR admite la incrustación de códigos QR en documentos PDF, lo que mejora la accesibilidad y funcionalidad de los documentos.

¿Es fácil implementar IronQR en una aplicación .NET?

La implementación de IronQR en una aplicación .NET es sencilla. Instalando el paquete NuGet, puede empezar a generar códigos QR con un código mínimo.

¿Es IronQR adecuado para la generación de códigos QR de nivel empresarial?

IronQR está diseñado para la generación de códigos QR de nivel empresarial y ofrece un rendimiento sólido y fiable en varias plataformas.

¿Ofrece IronQR alguna función avanzada para la lectura de códigos QR?

IronQR incluye funciones de lectura con tecnología ML, lo que garantiza un escaneado y un procesamiento precisos y eficaces de los códigos QR.

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