Write QR Codes in C#

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

Introdução

Com o IronQR, os desenvolvedores podem criar códigos QR para formatos de imagem populares e personalizá-los com cores de fundo, margens, logotipos e até mesmo adicioná-los a PDFs. Para uso avançado, oferece também controle sobre correção de erros e versões.

Este artigo explorará os principais recursos do IronQR com exemplos, ajudando você a entender como usá-lo para escrever códigos QR em C# e aplicá-lo de forma eficaz em seus projetos.

Índice

!{--010011000100100101000010010100100100000101010010010110010101111101010011010101000100000101010010010101000101111101010001010010010010010010100000101001100010111110100001001001100010011110100001101001011--}

Dados de entrada

Texto, URLs, Números

O IronQR pode converter uma ampla variedade de tipos de dados, incluindo texto, URLs e números, em códigos QR. Seja para criar links ou textos com códigos QR para marketing e comunicação, códigos numéricos para gestão de estoque ou codificar dados binários ou fluxos em códigos QR legíveis, o IronQR oferece todo o suporte necessário.

Além disso, a API é simples de usar. A classe QrWriter oferece várias sobrecargas, permitindo diferentes tipos de dados como entrada, reduzindo a complexidade e simplificando o processo.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-1.cs
using IronQr;
using IronSoftware.Drawing;

string text = "Hello, World!";
string url = "https://ironsoftware.com/csharp/qr/";
string alphanumeric = "WATERSKU-12356";

// Create QR code
QrCode textQr = QrWriter.Write(text);
// Save QR code as a bitmap
AnyBitmap textQrImage = textQr.Save();
// Save QR code as file
textQrImage.SaveAs("textQr.png");

QrCode urlQr = QrWriter.Write(url);
AnyBitmap urlQrImage = urlQr.Save();
urlQrImage.SaveAs("urlQr.png");

QrCode alphanumericQr = QrWriter.Write(alphanumeric);
AnyBitmap alphanumericQrImage = alphanumericQr.Save();
alphanumericQrImage.SaveAs("alphanumericQr.png");
$vbLabelText   $csharpLabel

Binário e Fluxos

Da mesma forma, podemos converter dados binários e fluxos em códigos QR usando o mesmo método Write mencionado anteriormente.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-2.cs
using IronQr;
using IronSoftware.Drawing;
using System.Text;

byte[] bytes = Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/");

// Create QR code
QrCode bytesQr = QrWriter.Write(bytes);

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

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

Programa de aula { estático void Main() { // Criar uma instância de gravador de código QR QrWriter escritor = QrWriter.CreateQrCode();

    // Exemplo de dados binários
    byte[] dados = { 0x01, 0x02, 0x03, 0x04 };

    // Escrever dados binários em código QR
    escritor.Escrever(dados)
          .SalvarComo("binary-qr.png");

    // Exemplo usando um fluxo de memória
    usando (MemoryStream stream = new MemoryStream(data))
    {
        escritor.Escrever(fluxo)
              .SalvarComo("stream-qr.png");
    }
}

}

O método Write tem sobrecargas que aceitam tanto arrays de bytes quanto fluxos como entradas. Para fluxos, podemos criar um MemoryStream a partir do array de bytes e depois convertê-lo em um código QR. Isso é útil quando os usuários precisam de um controle mais preciso sobre os blocos de dados, já que os fluxos podem ser mais eficientes em termos de memória.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-3.cs
using IronQr;
using IronSoftware.Drawing;
using System.IO;
using System.Text;

MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/"));

// Create QR code
QrCode streamQr = QrWriter.Write(stream);

// Save QR code as a bitmap
AnyBitmap streamQrImage = streamQr.Save();

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

Exportar códigos QR

O IronQR é flexível e adaptável a diversos casos de uso que exigem diferentes formatos de arquivo. Você pode salvar códigos QR em vários formatos, como JPG, PNG, GIF e TIFF usando o método SaveAs.

Salvar como imagem

O método SaveAs de AnyBitmap detecta automaticamente o formato do arquivo com base no caminho do arquivo fornecido. Neste exemplo, especifiquei um caminho de arquivo terminando com .png.

ObserveAo usar o método SaveAs, observe que não há formato de imagem padrão. Se você inserir uma extensão não reconhecida ou cometer um erro de digitação no caminho do arquivo, a imagem será salva com a extensão incorreta.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-4.cs
using IronQr;
using IronSoftware.Drawing;

// Create a QR code object
QrCode qr = QrWriter.Write("hello world");

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

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

Sistema.Desenho.Imagens

Converter imagens para o objeto System.Drawing.Images da Microsoft permite que você use a classe Bitmap para salvar o código QR em um caminho de arquivo. Neste exemplo, o método Save salva o código QR como um arquivo PNG no caminho qrBitmap.png.

System.Drawing.Common é suportado apenas na plataforma Windows.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-5.cs
using IronQr;
using System.Drawing;

// Create a QR code object
QrCode qr = QrWriter.Write("hello world");

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

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

IronSoftware.Desenho

Devido à falta de compatibilidade entre plataformas do System.Drawing.Common, os desenvolvedores podem encontrar problemas ao manter aplicativos multiplataforma. IronQR pode utilizar tanto System.Drawing.Common quanto IronSoftware.Drawing.

IronQR usa a classe AnyBitmap de IronSoftware.Drawing, uma classe Bitmap universalmente compatível que lança implicitamente para o seguinte:

  • System.Drawing.Bitmap
  • System.Drawing.Image
  • SkiaSharp.SKBitmap
  • SixLabors.ImageSharp
  • Microsoft.Maui.Graphics.Platform.PlatformImage

Com esta poderosa biblioteca de código aberto, IronQR alcança suporte multiplataforma e compatibilidade com .NET 8, .NET 7, .NET 6, .NET 5, .NET Core, .NET Standard e .NET Framework 4.6.2+. Para obter mais informações sobre a biblioteca, consulte o site IronSoftware.Drawing .

Carimbo em PDF

O IronQR permite que os desenvolvedores insiram códigos QR em documentos PDF existentes, facilitando o acesso rápido a links ou recursos adicionais por outras pessoas. É possível imprimir códigos QR em páginas únicas ou múltiplas.

Carimbar em uma única página

Após criar o código QR, chame o método StampToExistingPdfPage do objeto QrCode. Este método requer o caminho do arquivo, as coordenadas (x e y), o número da página e uma senha opcional, caso o PDF esteja protegido por senha. Após o fornecimento dos argumentos, o método imprime o código QR e salva o PDF.

ObserveEste método é baseado nas páginas do PDF, com a numeração das páginas começando em 1 em vez de 0.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-6.cs
using IronQr;

// Create a QR code object
QrCode qr = QrWriter.Write("hello world");

string filepath = "example.pdf";
int x = 100;
int y = 150;
int page = 1;

// Stamp QR code to (100, 150) of the pdf on page 1
qr.StampToExistingPdfPage(filepath, x, y, page);
$vbLabelText   $csharpLabel

Carimbar em várias páginas

Semelhante ao exemplo acima, a principal diferença é que o método StampToExistingPdfPages aceita uma lista de números de página em vez de apenas um.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-7.cs
using IronQr;
using System.Collections.Generic;

// Create a QR code object
QrCode qr = QrWriter.Write("hello world");

string filepath = "example.pdf";
int x = 100;
int y = 150;
List<int> pages = new List<int>();
pages.Add(1);
pages.Add(2);
pages.Add(3);
pages.Add(4);

// Stamp QR code to (100, 150) of the pdf on pages 1-4
qr.StampToExistingPdfPages(filepath, x, y, pages);
$vbLabelText   $csharpLabel

Resultados de ambos os exemplos

texto alternativo


Opções de código QR

O IronQR oferece amplas opções de personalização para ajustar o comportamento e a funcionalidade do código QR. A classe QrOptions fornece vários parâmetros, como controle de versão, tipo de codificação, codificação de caracteres e níveis de correção de erros. Vamos explorar essas opções com mais detalhes.

Codificação

O IronQR suporta vários tipos de códigos QR, tanto para criação quanto para leitura. Abaixo estão os tipos suportados:

  • QRCode: Este é o código QR padrão, comumente usado hoje. Ele pode armazenar até 7.089 caracteres numéricos ou 4.296 caracteres alfanuméricos.
  • MicroQRCode: Uma versão menor do código QR padrão, pode armazenar até 35 caracteres numéricos ou 21 caracteres alfanuméricos.
  • RMQRCode: O Código QR Micro Retangular é uma versão compacta do código QR, oferecendo flexibilidade em sua proporção de aspecto.
:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-8.cs
using IronQr;
using IronSoftware.Drawing;

QrOptions options = new QrOptions
{
    // Change encoding to micro QR code
    Encoding = IronQr.Enum.QrEncoding.MicroQRCode,
};

// 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("qrImage.png");
$vbLabelText   $csharpLabel

Correção de erros

A IronQR utiliza correção de erros padrão de QR Code para garantir que todos os códigos QR produzidos sejam tolerantes a falhas e confiáveis, mesmo em condições adversas. Além disso, o IronQR permite controle total sobre o nível de correção de erros para ajustes ainda mais precisos.

Há quatro níveis de correção de erros disponíveis, fornecidos por QrErrorCorrectionLevel:

  • Highest: 30% de correção de erros
  • High: 25% de correção de erros
  • Medium: 15% de correção de erros
  • Low: 7% de correção de erros
:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-9.cs
using IronQr;
using IronSoftware.Drawing;

QrOptions options = new QrOptions
{
    // Change error correction level to medium
    ErrorCorrectionLevel = 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("qrImage.png");
$vbLabelText   $csharpLabel

Uma correção de erros mais alta proporciona maior tolerância a falhas na leitura do código QR, tornando mais provável que ele seja lido em resoluções mais baixas em comparação com um código com baixa correção de erros. Você pode fazer testes com base nos seus casos de uso.

texto alternativo

Versão com código QR

Você pode ajustar a versão do código QR para armazenar mais dados. As versões mais avançadas são ideais para inventário ou logística, enquanto as versões mais básicas funcionam bem para dados menores, como URLs curtas. Basta alterar a propriedade Version no objeto QrOptions e passá-lo para o método Write para gerar o código QR conforme necessário.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-10.cs
using IronQr;
using IronSoftware.Drawing;

QrOptions options = new QrOptions
{
    // Change QR code version to 40
    Version = 40,
};

// 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("qrImage.png");
$vbLabelText   $csharpLabel

texto alternativo

Como você pode ver na saída, a versão 40 do código QR é muito mais complexa e densa em comparação com a versão 5.

As versões mais antigas exigem uma digitalização mais precisa e podem ser difíceis de digitalizar sem scanners de alta resolução. No entanto, versões mais recentes são mais fáceis de digitalizar, mesmo com câmeras de resolução mais baixa. Para um guia mais detalhado sobre como escolher a versão do QR Code com base na capacidade, consulte a lista de versões do QR Code .

Codificação de caracteres

Esta opção determina como o código QR será codificado. Em nosso exemplo, alteramos para 'UTF-32', enquanto a codificação de caracteres padrão é 'ISO-8859-1'.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-11.cs
using IronQr;
using IronSoftware.Drawing;

QrOptions options = new QrOptions
{
    // Change character encoding to UTF-32
    CharacterEncoding = "UTF-32"
};

// 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("qrImage.png");
$vbLabelText   $csharpLabel

Estilização de código QR

Além de seus métodos fáceis de usar e flexibilidade no tratamento de dados de entrada, o IronQR oferece muitas opções para personalizar e estilizar códigos QR, tornando-os únicos. A classe QrStyleOptions fornece vários parâmetros para personalizar todos os aspectos de um código QR. Vamos explorar as opções disponíveis.

Redimensionar

Para redimensionar o código QR, você pode definir a propriedade Dimensions do objeto QrStyleOptions e depois passá-lo ao método Save. Por padrão, o código QR é salvo com 300px. Neste exemplo, salvamos o código QR com 600px em vez de 300px.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-12.cs
using IronQr;
using IronSoftware.Drawing;

QrStyleOptions styleOptions = new QrStyleOptions()
{
    // Change the dimensions to 600px
    Dimensions = 600,
};

string url = "https://ironsoftware.com/csharp/qr/";

// Create QR code
QrCode qr = QrWriter.Write(url);

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

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

texto alternativo

Margens e Bordas

Para ajustar as margens e bordas, podemos usar a propriedade Margins da classe QrStyleOptions. Essa propriedade controla as margens do código QR em todos os lados, com um valor padrão de 10px. Em nosso exemplo, definimos a margem para 20px.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-13.cs
using IronQr;
using IronSoftware.Drawing;

QrStyleOptions styleOptions = new QrStyleOptions()
{
    // Change margins to 20px
    Margins = 20
};

string url = "https://ironsoftware.com/csharp/qr/";

// Create QR code
QrCode qr = QrWriter.Write(url);

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

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

texto alternativo

Alterar margens para cada lado

O IronQR também permite que os usuários especifiquem margens diferentes para cada lado, proporcionando um controle mais preciso.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-14.cs
using IronQr;
using IronSoftware.Drawing;

QrStyleOptions styleOptions = new QrStyleOptions()
{
    // Change margins
    MarginBottom = 30,
    MarginTop = 100,
    MarginRight = 40,
    MarginLeft = 20,
};

string url = "https://ironsoftware.com/csharp/qr/";

// Create QR code
QrCode qr = QrWriter.Write(url);

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

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

Recolorir

Podemos adicionar cores ao código QR e seu fundo usando a classe QrStyleOptions. Personalizar as cores torna o código QR mais exclusivo e atraente. Você pode mudar a cor usando as propriedades Color e BackgroundColor. Certifique-se de importar IronSoftware.Drawing para uma lista de cores disponíveis para atribuição.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-15.cs
using IronQr;
using IronSoftware.Drawing;

// Load new logo image
AnyBitmap logo = AnyBitmap.FromFile("sample.png");

// Add new logo to QR code style options
QrStyleOptions styleOptions = new QrStyleOptions()
{
    Logo = new QrLogo(logo, 50, 50, 10),
};

string url = "https://ironsoftware.com/csharp/qr/";

// Create QR code
QrCode qr = QrWriter.Write(url);

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

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

texto alternativo

Adicionar um logotipo

Além de cores e dimensões, você também pode adicionar o logotipo da sua empresa ao código QR. Isso ajuda os usuários a reconhecerem e associarem imediatamente o código QR à sua marca. A propriedade Logo facilita a personalização de um código QR adicionando o logotipo da sua empresa.

:path=/static-assets/qr/content-code-examples/tutorials/csharp-qr-writing-15.cs
using IronQr;
using IronSoftware.Drawing;

// Load new logo image
AnyBitmap logo = AnyBitmap.FromFile("sample.png");

// Add new logo to QR code style options
QrStyleOptions styleOptions = new QrStyleOptions()
{
    Logo = new QrLogo(logo, 50, 50, 10),
};

string url = "https://ironsoftware.com/csharp/qr/";

// Create QR code
QrCode qr = QrWriter.Write(url);

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

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

texto alternativo

Personalize o logotipo

A classe QrLogo permite maior personalização da aparência do logotipo. Abaixo estão as propriedades disponíveis:

  • Bitmap: Representa a imagem que você deseja usar como logotipo.
  • Width: Representa a largura do logotipo. O valor padrão é 0.
  • Height: Representa a altura do logotipo. O valor padrão é 0.
  • CornerRadius: Representa o raio para arredondar os cantos do logotipo. Por padrão, está definido como 0, o que significa que o logotipo terá cantos quadrados.
using IronQRCode;
using IronSoftware.Drawing;

Programa de aula
{
    estático void Main()
    {
        `QrStyleOptions` styleOptions = new `QrStyleOptions`
        {
            `Logo` = new `QrLogo`
            {
                `Bitmap` = `AnyBitmap.FromBitmap`("path/to/logo.png"),
                `Width` = 50,
                `Height` = 50,
                `CornerRadius` = 5
            }
        };

        `QrCode` qr = `QrWriter.CreateQrCode`()
                               .Write("Customized Logo Example");

        qr.SaveAs("example-customized-logo-qr.png", styleOptions);
    }
}
using IronQRCode;
using IronSoftware.Drawing;

Programa de aula
{
    estático void Main()
    {
        `QrStyleOptions` styleOptions = new `QrStyleOptions`
        {
            `Logo` = new `QrLogo`
            {
                `Bitmap` = `AnyBitmap.FromBitmap`("path/to/logo.png"),
                `Width` = 50,
                `Height` = 50,
                `CornerRadius` = 5
            }
        };

        `QrCode` qr = `QrWriter.CreateQrCode`()
                               .Write("Customized Logo Example");

        qr.SaveAs("example-customized-logo-qr.png", styleOptions);
    }
}
$vbLabelText   $csharpLabel

Verificação da tolerância a falhas

Além da ampla flexibilidade em formatos de arquivo e personalizações, a flexibilidade se estende aos aspectos de depuração e tratamento de erros. O IronQR fornece diversas ferramentas para que os desenvolvedores lidem com exceções e escrevam testes unitários para verificar aplicativos.

Somas de verificação

Os códigos QR podem, por vezes, ficar danificados, mas o IronQR inclui verificações de integridade e correção de dados integradas para os manter funcionais. Ele utiliza o algoritmo de correção de erros Reed-Solomon , garantindo que os códigos QR permaneçam tolerantes a falhas.

Mensagens de erro detalhadas

O IronQR fornece mensagens de erro detalhadas que ajudam os usuários a identificar problemas rapidamente. Essas mensagens contêm uma lista de exceções específicas, facilitando a depuração e a resolução de problemas. Abaixo está uma lista de IronQrException usados pela biblioteca.

  • IronQrEncodingException: Uma subclasse de IronQrException, este erro ocorre quando há um problema ao escrever o código QR. Por exemplo, ele aparecerá se um usuário tentar criar um código QR a partir de uma sequência de caracteres vazia.

texto alternativo

  • IronQrFileException: Uma subclasse de IronQrException, este erro ocorre quando surge um problema relacionado ao arquivo.

  • IronQrPdfPasswordExcception: Uma subclasse de IronQrException, este erro ocorre quando o PDF que um usuário está tentando carimbar é protegido por senha, e ou nenhuma senha ou uma senha incorreta é fornecida. Também aborda outros erros relacionados a PDFs, como quando o PDF não pode ser aberto, conforme mostrado no exemplo.

texto alternativo

Conclusão

O IronQR oferece um conjunto abrangente de métodos para gerar e personalizar códigos QR em aplicações .NET . Graças aos seus recursos robustos, os desenvolvedores podem criar facilmente códigos QR com diversas codificações de dados, estilos visuais e níveis de correção de erros. O suporte da biblioteca a diversos formatos de saída e a integração perfeita em documentos existentes a tornam uma ferramenta versátil para qualquer projeto de código QR. Quer você precise de códigos QR básicos ou de soluções avançadas e personalizadas, a IronQR oferece a flexibilidade e a funcionalidade para atender às suas necessidades com eficiência.

Para saber mais, consulte a documentação do IronQR , comece a explorar com um teste gratuito e analise as opções de licenciamento para ver qual plano melhor se adapta às suas necessidades.

Perguntas frequentes

Como faço para gerar um código QR em C#?

Você pode gerar um código QR em C# usando a classe QrWriter disponível no IronQR. Essa classe permite gravar dados em um código QR e salvá-lo em vários formatos de imagem. Basta usar o método Write para codificar seus dados e SaveAs para gerar o código QR.

Que tipos de personalização posso aplicar aos códigos QR?

O IronQR permite personalizar códigos QR alterando suas cores, adicionando logotipos, redimensionando e ajustando as margens. Use a classe QrStyleOptions para aplicar essas personalizações.

Posso incorporar um código QR em um PDF usando C#?

Sim, você pode incorporar um código QR em um PDF usando o IronQR, utilizando os métodos StampToExistingPdfPage ou StampToExistingPdfPages . Isso permite especificar a localização e as páginas onde o código QR deve aparecer.

Como posso lidar com erros ao criar códigos QR?

O IronQR possui recursos robustos de tratamento de erros, fornecendo mensagens de erro como IronQrEncodingException , IronQrFileException e IronQrPdfPasswordException para auxiliar na depuração e resolução de problemas.

Em que formatos posso exportar códigos QR?

Com o IronQR, você pode exportar códigos QR para diversos formatos, incluindo JPG, PNG, GIF e TIFF. O método SaveAs permite especificar o formato desejado para o seu código QR.

Esta biblioteca suporta desenvolvimento multiplataforma?

Sim, o IronQR oferece suporte ao desenvolvimento multiplataforma por meio da biblioteca IronSoftware.Drawing, tornando-o compatível com diferentes versões e plataformas do .NET.

É possível adicionar um logotipo a um código QR para fins de branding?

Você pode adicionar um logotipo a um código QR usando o IronQR, definindo a propriedade Logo na classe QrStyleOptions , permitindo códigos QR personalizados com a aparência do logotipo.

Qual é a finalidade da correção de erros em códigos QR?

A correção de erros em códigos QR, suportada pelo IronQR, garante que os códigos QR permaneçam legíveis mesmo que parcialmente danificados. Este recurso oferece quatro níveis de correção: Máximo, Alto, Médio e Baixo, para atender a diferentes casos de uso.

Que tipos de dados podem ser codificados em códigos QR?

O IronQR pode codificar diversos tipos de dados em códigos QR, incluindo texto, URLs, números, dados binários e fluxos de dados, proporcionando flexibilidade nos dados que você pode representar.

Como posso criar um código QR com uma URL em C#?

Para criar um código QR com uma URL em C#, utilize a classe QrWriter do IronQR. Utilize o método Write para codificar a URL e SaveAs para armazenar o código QR como uma imagem.

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.