IRONSOFTWAREHOME
USANDO O IRONQR

Como ler um QR Code de uma imagem em C#

Curtis Chau
Curtis Chau
Updated: 28 de junho de 2026

Os códigos QR (Códigos de Resposta Rápida) estão em toda parte — em embalagens de produtos, ingressos de eventos, menus e até mesmo cartões de visita. Como desenvolvedor .NET, ser capaz de rapidamente e confiavelmente ler códigos QR de imagens pode abrir portas para automação poderosa e recursos de interação com o usuário. Neste guia, vamos te guiar sobre como usar o IronQR, uma biblioteca de códigos QR de alto desempenho criada especificamente para .NET, para ler códigos QR de imagens com apenas algumas linhas de código C#.

Seja você está construindo um software de gestão de inventário, integrando autenticação de dois fatores ou simplesmente decodificando URLs de capturas de tela, o IronQR torna tudo mais fácil.

O que é IronQR?

IronQR é uma poderosa biblioteca de códigos QR para C# desenvolvida para criar um leitor e gravador de códigos QR poderoso para desenvolvedores .NET. IronQR é projetado tanto para geração quanto para escaneamento de códigos QR, e suporta leitura de uma variedade de formatos de imagem, tornando-o ideal para uso em aplicações de desktop, web, ou servidor. Através desta biblioteca, você pode criar ferramentas precisas de leitura de códigos QR para automatizar todo o processo de reconhecimento e leitura de códigos QR.

Principais características

  • Leia e gere códigos QR com facilidade.
  • Suporte para JPEG, PNG, BMP e outros formatos de imagem.
  • Alto desempenho e detecção precisa para fácil extração de dados de códigos QR.
  • Funciona em projetos .NET Framework, .NET Core, .NET Standard (2.0+), e .NET 6/7+.
  • Oferece suporte multiplataforma, para que você possa trabalhar no ambiente de aplicativo e sistema operacional de sua preferência, seja Windows, Linux, ou qualquer outro ambiente suportado.

Ao contrário das alternativas de código aberto, o IronQR foca na estabilidade de nível empresarial, licenciamento comercial e suporte profissional — o que o torna um excelente ajuste para aplicações críticas de negócios.

Configuração do IronQR no Seu Projeto C#

Antes de você iniciar o escaneamento de códigos QR, vamos passar por como configurar o IronQR em sua aplicação .NET.

Instale via NuGet.

Você pode instalar o IronQR diretamente do NuGet Package Manager Console:

PM > Install-Package IronQR

Alternativamente, use a interface gráfica do NuGet no Visual Studio buscando por IronQR, e clique em "Install":

Como Ler QR De Imagem em C#: Figura 2 - Tela do Gerenciador de Pacotes NuGet do IronQR

Adicionar Namespaces e Configuração Básica

Assim que instalado, inclua o seguinte namespace em seu arquivo C#:

using IronSoftware.Drawing;
using IronQR;

Nota: IronSoftware.Drawing é usado para manipular formatos de imagem de maneira multiplataforma.

Ler Código QR de uma Imagem

Vamos mergulhar em como realmente ler um código QR de um arquivo usando o IronQR.

Formatos de imagem suportados

O IronQR suporta vários tipos de formatos de imagem, incluindo:

  • PNG
  • JPG/JPEG
  • BMP
  • GIF
  • TIFF

Essa flexibilidade permite que você trabalhe com praticamente qualquer fonte de imagem, desde fotos de câmera até documentos escaneados.

Exemplo de código básico

Vamos dar uma olhada mais de perto em como você pode usar essa biblioteca para decodificar códigos QR com facilidade. Aqui está um exemplo mínimo que lê um único código QR com o valor de texto "Hello World!" de um arquivo de imagem, usando a classe Bitmap e um fluxo de arquivo para carregar a imagem:

using IronQr;
using IronSoftware.Drawing;
using System;
class Program
{
    static void Main()
    {
        // Load the image using a file stream
        using var stream = File.OpenRead("sample-qr.png");
        var bitmapImage = AnyBitmap.FromStream(stream);
        QrImageInput qrImageInput = new QrImageInput(bitmapImage );
        // Read the QR code
        QrReader qrReader = new QrReader();
        try
        {
     // Use the QR read method to read the values within your QR code(s)
            IEnumerable<QrResult> results = qrReader.Read(qrImageInput);
            // Output the decoded value
            foreach (var result in results)
            {
                Console.WriteLine("QR Code Value: " + result.Value);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine("Error reading QR code: " + ex.Message);
        }
    }
}

Saída do console

Como Ler QR De Imagem em C#: Figura 3 - Saída do console do valor do Código QR

Este código carrega a imagem do código QR, lê o primeiro código QR detectado e imprime o conteúdo decodificado. Simples e eficaz. A partir daqui, você pode salvar os valores do código QR para uso posterior.

Manipulando Múltiplos Códigos QR

Se sua imagem contiver múltiplos códigos QR (por exemplo, uma folha de etiquetas de produtos), você pode extrair todos eles. Para este exemplo, vamos passar a seguinte imagem de código QR pelo nosso programa:

Como Ler QR De Imagem em C#: Figura 4 - Imagem com Múltiplos Códigos QR

using IronQr;
using IronSoftware.Drawing;
using System;
class Program
{
    static void Main()
    {
        // Load the image from file
        var inputImage = AnyBitmap.FromFile("SampleCodes.png");
        QrImageInput qrImageInput = new QrImageInput(inputImage);
        // Read the QR code
        QrReader qrReader = new QrReader();
        IEnumerable<QrResult> results = qrReader.Read(qrImageInput);
        // Output the decoded value
        foreach (var result in results)
        {
            Console.WriteLine("QR Code Value: " + result.Value);
        }
    }
}

Saída

Como Ler QR De Imagem em C#: Figura 5 - Saída do valor do Código QR

Casos de Uso Comuns para Escaneamento de Código QR

Aqui estão alguns cenários do mundo real onde a leitura de códigos QR de imagens se torna valiosa:

  • Gerenciamento de Inventário e Ativos: Automatizar a identificação de itens escaneando códigos QR das imagens dos pacotes.
  • Autenticação de Dois Fatores (2FA): Analisar códigos QR de telas de configuração de 2FA para auxiliar na configuração segura.
  • Integração com Aplicativos Móveis: Iniciar URLs móveis ou links profundos específicos de aplicativos escaneando capturas de tela de QR compartilhadas.
  • Bilhetagem de Eventos: Validar códigos QR de bilhetes enviados por e-mail ou exibidos em uma tela.
  • Portais de Pagamento: Extrair dados de pagamento incorporados em códigos QR para aplicações fintech.

Em todos esses casos de uso, o reconhecimento rápido e preciso é fundamental — algo que o IronQR lida com facilidade.

Dicas de Solução de Problemas

Se você encontrar problemas ao ler códigos QR, considere o seguinte:

Qualidade de Imagem Ruim

Imagens borradas ou de baixa resolução podem dificultar a detecção de um código QR. Use entradas de alta qualidade sempre que possível.

Código QR Não Detectado

Certifique-se de que a imagem não esteja muito escura, tenha um forte contraste, e que o código QR não esteja obscurecido. Tente cortar a imagem para focar na região do QR.

Tratamento de Exceções

Sempre envolva sua lógica de leitura de QR em blocos try-catch para lidar graciosamente com arquivos corrompidos ou formatos inesperados:

try
{
    IEnumerable<QrResult> results = qrReader.Read(qrImageInput);
    // Output the decoded value
    foreach (var result in results)
    {
        Console.WriteLine("QR Code Value: " + result.Value);
    }
}
catch (Exception ex)
{
    Console.WriteLine("Error reading QR code: " + ex.Message);
}

Considerações finais

Ler códigos QR de imagens em C# não precisa ser difícil. Com IronQR, você pode integrar a leitura de códigos QR em suas aplicações .NET com apenas algumas linhas de código. Sua simplicidade, compatibilidade multiplataforma e excelente desempenho o tornam uma ferramenta indispensável para desenvolvedores que trabalham em sistemas modernos habilitados para QR.

Se você está procurando estender essa funcionalidade, considere explorar:

Instale a versão de teste gratuita do IronQR para começar hoje e aprenda como esta biblioteca pode elevar suas tarefas com códigos QR.

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 bem estruturados e visualmente atraentes.

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.