Cómo Configurar la Corrección de Errores en C# | IronQR

How To Set Error Correction

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

Error Correction in barcodes refers to the ability to maintain barcode readability despite visual defects or encoding errors. These damages can arise due to factors such as printing imperfections, smudges, scratches, or variations in scanning conditions. Error correction is a major factor in determining which type of barcode encoding is suitable.

In general, 2D barcodes have a higher tolerance to defects compared to 1D barcodes due to the following factors:

  • Data Capacity: 2D barcodes can store significantly more data than 1D barcodes as they encode data both horizontally and vertically, accommodating alphanumerics, binary data, images, and more.
  • Redundancy: 2D barcodes have multiple layers of data encoding, allowing information extraction from any remaining intact sections even when part of the barcode is damaged.
  • Compactness: 2D barcodes are suitable for limited spaces due to their compact shape.
  • Flexibility: 2D barcodes can be scanned from various angles and orientations.

Quickstart: Use Error Correction Level in QR Code Creation

This short example shows how effortlessly you can generate a QR code with IronBarcode, setting the error correction level to Medium. Developers can get up and running in seconds using the CreateQrCode method with size, content, and error correction level.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronBarcode with NuGet Package Manager

    PM > Install-Package BarCode

  2. Copy and run this code snippet.

    var qr = IronBarCode.QRCodeWriter.CreateQrCode("https://ironsoftware.com", 500, IronBarCode.QRCodeWriter.QrErrorCorrectionLevel.Medium).SaveAsPng("qr.png");
  3. Deploy to test on your live environment

    Start using IronBarcode in your project today with a free trial
    arrow pointer


Adjust Error Correction in QR Codes Example

Currently, IronBarcode supports setting error correction in QR Codes, Micro QRs, and rMQRs. It supports all four pre-set error correction levels specified by QR code standards. The error correction level is adjusted via the QrErrorCorrection parameter in the QRCodeWriter.CreateQrCode method. The four levels of error correction are:

  • Highest: Level H. Can recover up to 30% of data.
  • High: Level Q. Can recover up to 25% of data.
  • Medium: Level M. Can recover up to 15% of data.
  • Low: Level L. Can recover up to 7% of data.

Higher error correction levels result in more complex QR code images, requiring a balance between visual clarity and error correction when generating QR codes. The code sample below demonstrates setting error correction:

:path=/static-assets/barcode/content-code-examples/how-to/set-error-correction.cs
// Import the necessary namespace for barcode generation
using IronBarCode;

// Create a QR code with the specified URL, size, and error correction level
GeneratedBarcode mediumCorrection = QRCodeWriter.CreateQrCode(
    "https://ironsoftware.com/csharp/barcode/", // URL to be encoded in the QR code
    500,                                       // Size of the QR code (500x500 pixels)
    QRCodeWriter.QrErrorCorrectionLevel.Medium // Error correction level to handle distortions
);

// Save the generated QR code image as a PNG file with the specified filename
mediumCorrection.SaveAsPng("mediumCorrection.png");
' Import the necessary namespace for barcode generation
Imports IronBarCode

' Create a QR code with the specified URL, size, and error correction level
Private mediumCorrection As GeneratedBarcode = QRCodeWriter.CreateQrCode("https://ironsoftware.com/csharp/barcode/", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium)

' Save the generated QR code image as a PNG file with the specified filename
mediumCorrection.SaveAsPng("mediumCorrection.png")
$vbLabelText   $csharpLabel

Error Correction Comparison

Below is a sample set of QR Code images, each representing the same value but with varying levels of error correction. As observed, higher error correction levels lead to more complex QR code images, offering greater fault tolerance.

Highest Error Correction
High Error Correction
Medium Error Correction
Low Error Correction

Preguntas Frecuentes

¿Qué es la corrección de errores en códigos de barras y por qué es importante?

La corrección de errores en los códigos de barras es la capacidad de mantener la legibilidad a pesar de defectos visuales o errores de codificación, como manchas o arañazos. Esta característica es crucial para asegurar la precisión y confiabilidad de los datos en aplicaciones de código de barras.

¿Cómo se diferencian los códigos de barras 2D de los 1D en corrección de errores?

Los códigos de barras 2D se diferencian de los códigos de barras 1D debido a su mayor capacidad de datos, redundancia, compacidad y flexibilidad. Esto permite que los códigos de barras 2D sean más resistentes al daño y más fáciles de escanear desde varios ángulos, mejorando sus capacidades de corrección de errores.

¿Cómo puedo establecer los niveles de corrección de errores en códigos QR usando C#?

Para establecer niveles de corrección de errores en códigos QR usando C#, puedes utilizar la biblioteca IronBarcode. Descarga la biblioteca, utiliza la clase QRCodeWriter y ajusta el parámetro QrErrorCorrection para establecer el nivel de corrección de errores deseado.

¿Cuáles son los niveles de corrección de errores disponibles para los códigos QR?

Los códigos QR soportan cuatro niveles de corrección de errores: Máximo (Nivel H, recuperación de datos del 30%), Alto (Nivel Q, recuperación de datos del 25%), Medio (Nivel M, recuperación de datos del 15%) y Bajo (Nivel L, recuperación de datos del 7%). Estos niveles determinan cuánto data se puede recuperar si el código QR está dañado.

¿Cómo afecta la modificación de los niveles de corrección de errores la apariencia de los códigos QR?

La modificación de los niveles de corrección de errores afecta la complejidad de los códigos QR. Los niveles más altos de corrección de errores resultan en imágenes más intrincadas, equilibrando entre la claridad visual y la capacidad de recuperación de datos.

¿Qué método se usa para crear un código QR con corrección de errores específica en C#?

En C#, el método QRCodeWriter.CreateQrCode se utiliza para generar un código QR con un nivel de corrección de errores especificado al ajustar el parámetro QrErrorCorrection.

¿Puede aplicarse corrección de errores a otros tipos de códigos de barras además de los códigos QR usando esta biblioteca?

Sí, la biblioteca IronBarcode admite corrección de errores en otros tipos de códigos de barras como Micro QR y rMQR, además de códigos QR.

¿Qué impacto tiene la corrección de errores en la capacidad de datos de los códigos de barras?

Los niveles más altos de corrección de errores disminuyen la capacidad de datos de los códigos de barras porque se utiliza más espacio para almacenar datos de corrección de errores, reduciendo la cantidad de espacio disponible para los datos reales.

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,935,276 | Versión: 2025.11 recién lanzado