Como Configurar Níveis de Correção de Erros de Código QR

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

Assuma o controle do desempenho. Ajuste as configurações de correção de erros para criar códigos QR mais rápidos e duráveis que possam resistir a danos e ainda serem lidos com confiabilidade.

A correção de erros é o que separa um código QR que se desintegra de um que continua funcionando. Quando uma etiqueta impressa é arranhada, um adesivo descola ou um pôster desbota ao sol, a correção de erros determina se o código ainda é lido. IronQR permite que os desenvolvedores escolham quanta resiliência um código QR possui, desde códigos leves otimizados para displays digitais limpos até códigos pesados construídos para sobreviver em armazéns e pisos de fábrica.

Este guia demonstra como configurar níveis de correção de erros usando a biblioteca IronQR, equilibrando a densidade de dados contra a tolerância a danos para qualquer caso de uso. Desenvolvedores novos na geração de códigos QR devem começar com o guia Criar Código QR como Imagem primeiro.

Início Rápido: Definir Correção de Erros do Código QR

Configure o nível de correção de erro via QrOptions e gere um código QR resiliente.

  1. Instale IronQR com o Gerenciador de Pacotes NuGet

    PM > Install-Package IronQR
  2. Copie e execute este trecho de código.

    var options = new QrOptions(QrErrorCorrectionLevel.Medium);
    var qrCode = QrWriter.Write("https://example.com", options);
    qrCode.Save().SaveAs("qr-medium.png");
  3. Implante para testar em seu ambiente de produção.

    Comece a usar IronQR em seu projeto hoje com uma avaliação gratuita

    arrow pointer

Compreendendo Níveis de Correção de Erros

Os códigos QR usam correção de erros Reed-Solomon para permanecerem legíveis mesmo quando parcialmente danificados ou ocultos. O enumerador QrErrorCorrectionLevel no IronQR fornece quatro níveis, cada um trocando capacidade de dados por resiliência aumentada:

Nível Capacidade de Recuperação Ideal para
QrErrorCorrectionLevel.Low ~7% de dano Telas digitais, ambientes controlados
QrErrorCorrectionLevel.Medium ~15% de dano Uso geral, durabilidade moderada
QrErrorCorrectionLevel.High ~25% de dano Materiais impressos, sinalização externa
QrErrorCorrectionLevel.Highest ~30% de dano Rótulos industriais, condições severas

Níveis mais altos de correção de erros adicionam mais módulos de redundância, o que aumenta a densidade visual do código QR. Isso também afeta o tamanho da imagem gerada, portanto, os desenvolvedores podem precisar ajustar as dimensões de acordo. O nível mais baixo que atende aos requisitos de durabilidade mantém o código compacto e rápido de ler.

Configurando o Nível de Correção de Erros

Para definir o nível de correção de erro, passe o valor QrErrorCorrectionLevel desejado para o construtor QrOptions. Em seguida, passe essas opções para QrWriter.Write() ao gerar o código QR.

Neste exemplo, a correção de erro está definida como Média, o que recupera até 15% dos dados danificados enquanto mantém o código compacto.

:path=/static-assets/qr/content-code-examples/how-to/error-correction-qr-code.cs
using IronQr;
using IronSoftware.Drawing;

QrOptions options = new QrOptions(QrErrorCorrectionLevel.Medium);

// Create QR code
QrCode qr = QrWriter.Write("1234", options);

// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save();

// Save QR code bitmap as file
qrImage.SaveAs("qrMedium.png");
$vbLabelText   $csharpLabel

Saída

Código QR com Correção de Erro Média

Comparando Níveis de Correção de Erro

Cada nível produz um código QR visualmente diferente. Níveis mais baixos geram padrões mais simples que são mais rápidos de escanear, enquanto níveis mais altos criam padrões mais densos que sobrevivem a mais danos. Aqui está como gerar os mesmos dados em cada nível para comparação:

:path=/static-assets/qr/content-code-examples/how-to/error-correction-qr-code-compare.cs
using IronQr;
using IronSoftware.Drawing;

string data = "https://ironsoftware.com";

// Low - ~7% recovery, smallest code
QrCode qrLow = QrWriter.Write(data, new QrOptions(QrErrorCorrectionLevel.Low));
qrLow.Save().SaveAs("qrLow.png");

// Medium - ~15% recovery, balanced
QrCode qrMedium = QrWriter.Write(data, new QrOptions(QrErrorCorrectionLevel.Medium));
qrMedium.Save().SaveAs("qrMedium.png");

// High - ~25% recovery, durable
QrCode qrHigh = QrWriter.Write(data, new QrOptions(QrErrorCorrectionLevel.High));
qrHigh.Save().SaveAs("qrHigh.png");

// Highest - ~30% recovery, maximum resilience
QrCode qrHighest = QrWriter.Write(data, new QrOptions(QrErrorCorrectionLevel.Highest));
qrHighest.Save().SaveAs("qrHighest.png");
$vbLabelText   $csharpLabel

ObserveNíveis mais altos de correção de erro aumentam o número de módulos no código QR, o que torna o padrão mais denso. Se a velocidade de escaneamento for uma prioridade, recomenda-se o nível mais baixo que atenda às necessidades de durabilidade do projeto.

Saída

QR Code with Low Error Correction
Código QR com Correção de Erro Média
QR Code with High Error Correction
QR Code with Highest Error Correction

Escolhendo o Nível Correto para o Caso de Uso

O nível correto de correção de erro depende de onde o código QR estará e o que ele precisa suportar:

Caso de uso Nível Por quê Guia Relacionado
Telões digitais e sites QrErrorCorrectionLevel.Low A tela está limpa, a iluminação é controlada, sem desgaste físico. Mantém o código simples e rápido de escanear. Criar Código QR como Imagem
Cartões de visita, folhetos e sinalização interna QrErrorCorrectionLevel.Medium Manuseio leve e pequenos vincos não afetam o escaneamento. Combine com margens adequadas para melhores resultados. Adicionar Margens ao Código QR
Embalagens de produtos e cartazes ao ar livre QrErrorCorrectionLevel.High Os materiais enfrentam chuva, exposição UV e manuseio bruto durante o transporte. Aumente o tamanho para escaneamento à distância. Redimensionar Código QR
Rótulos de armazém, pisos de fábrica e etiquetas industriais QrErrorCorrectionLevel.Highest Ambientes adversos onde os códigos são arranhados, manchados ou parcialmente cobertos. A redundância máxima os mantém funcionando. Ler Códigos QR de Imagem

Para padrões de geração de código QR mais avançados, explore o tutorial Gerador de Código QR em C# e o conjunto completo de recursos do IronQR.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Nuget Downloads 61,359 | Versão: 2026.3 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronQR
executar um exemplo Veja seu URL se transformar em um código QR.