Gere Códigos QR com C#
Os desenvolvedores C# podem usar o QRCoder, uma biblioteca .NET popular, para gerar códigos QR em aplicações ASP.NET, WPF, MAUI e de consola. Sem dependências externas necessárias.
Instalação
Instale o QRCoder via Gestor de Pacotes NuGet.
dotnet add package QRCoderInstall-Package QRCoderGerar Códigos QR com QRCoder
Exemplos de código usando a biblioteca QRCoder em C#.
Basic QR Code with QRCoder
using QRCoder;
var qrGenerator = new QRCodeGenerator();
var qrData = qrGenerator.CreateQrCode("https://qrcode.fun",
QRCodeGenerator.ECCLevel.Q);
// PNG output
var qrCode = new PngByteQRCode(qrData);
byte[] pngBytes = qrCode.GetGraphic(20);
File.WriteAllBytes("qrcode.png", pngBytes);SVG Output
using QRCoder;
var qrGenerator = new QRCodeGenerator();
var qrData = qrGenerator.CreateQrCode("https://qrcode.fun",
QRCodeGenerator.ECCLevel.Q);
var svgQrCode = new SvgQRCode(qrData);
string svgString = svgQrCode.GetGraphic(20,
"#1A2B3C", "#FFFFFF");
File.WriteAllText("qrcode.svg", svgString);ASP.NET Core Endpoint
app.MapGet("/qr", (string data) =>
{
var qrGenerator = new QRCodeGenerator();
var qrData = qrGenerator.CreateQrCode(data,
QRCodeGenerator.ECCLevel.Q);
var qrCode = new PngByteQRCode(qrData);
byte[] png = qrCode.GetGraphic(20);
return Results.File(png, "image/png");
});Gerar Códigos QR via API em C#
Chame a API do QRCode.fun a partir de C# usando HttpClient para códigos QR estilizados.
using System.Net.Http.Json;
var client = new HttpClient();
var payload = new {
data = "https://qrcode.fun",
width = 300,
height = 300,
type = "png",
margin = 10,
dotsOptions = new { color = "#1A2B3C", type = "rounded" },
cornersSquareOptions = new { color = "#8564C3", type = "extra-rounded" },
backgroundOptions = new { color = "#FFFFFF" }
};
var response = await client.PostAsJsonAsync(
"https://qrcode.fun/api/generate-qr-styled", payload);
var result = await response.Content.ReadFromJsonAsync<JsonElement>();
Console.WriteLine(result.GetProperty("data").GetString()?[..50]);Pré-visualização de Código QR ao Vivo
Experimente gerar um código QR com C# agora mesmo.
Biblioteca Nativa vs API
Compare o uso do QRCoder com a API do QRCode.fun.
| Funcionalidade | QRCoder | QRCode.fun API |
|---|---|---|
| Complexidade de configuração | Instalação NuGet | Uma única requisição HTTP via HttpClient |
| Personalização | Cores, logotipos, formas (ArtQRCode) | Estilização completa: cores, formas, logotipos |
| Suporte offline | Sim | Requer internet |
| Manutenção | Atualização NuGet | Sempre atualizado |
| Formatos de saída | PNG, SVG, PDF, ASCII | PNG, SVG |
Casos de Uso de Códigos QR em C#
Cenários comuns para códigos QR em aplicações .NET.
APIs Web ASP.NET
Gere códigos QR em APIs ASP.NET Core para bilhetes, faturas, tokens de autenticação e páginas de produtos.
Aplicações Desktop WPF e MAUI
Crie aplicações desktop com geração de códigos QR para etiquetas, cartões de visita e rastreamento de ativos.
Azure Functions
Implemente a geração de QR como Azure Functions serverless acionadas por requisições HTTP ou mensagens de fila.
Relatórios e PDF
Incorpore códigos QR em relatórios PDF e documentos usando QuestPDF ou iTextSharp para pagamentos e rastreamento.
Mergulho Profundo no Ecossistema de Códigos QR em C#
O ecossistema .NET fornece geração de códigos QR de nível empresarial em plataformas web, desktop, móveis e cloud.
Middleware ASP.NET Core e Injeção de Dependências
Registe QRCoder como um serviço com escopo no contentor DI do ASP.NET Core para separação limpa de responsabilidades. Crie um middleware QR dedicado que intercete rotas específicas e retorne imagens QR. Use IMemoryCache ou IDistributedCache (Redis) para cachear códigos QR gerados por hash de conteúdo, evitando geração redundante. Em APIs mínimas (.NET 7+), retorne Results.Bytes(pngData, "image/png") para endpoints QR leves.
MAUI e Aplicações Desktop Multiplataforma
.NET MAUI permite a geração de códigos QR em Windows, macOS, Android e iOS a partir de uma única base de código. QRCoder funciona em todas as plataformas MAUI para geração local. Crie um controlo personalizado QrCodeView que encapsule a saída SVG do QRCoder num WebView ou renderize PNG num controlo Image. Para aplicações WPF legadas, BitmapByteQRCode do QRCoder gera arrays de bytes que se convertem diretamente em fontes BitmapImage.
Azure Functions e Implantação Serverless
Implante a geração de QR como Azure Functions para auto-scaling e preços por execução. Use funções acionadas por HTTP que aceitem parâmetros QR e retornem respostas PNG. Para cenários em lote, use funções acionadas por fila que processem requisições de geração de QR do Azure Service Bus. O footprint leve do QRCoder garante cold starts abaixo de 500ms. Combine com Azure CDN para cachear códigos QR frequentemente solicitados no edge.
Perguntas Frequentes
Perguntas comuns sobre a geração de códigos QR com C#.
Comece a gerar códigos QR com C#
Use o nosso gerador gratuito ou integre a API nas suas aplicações .NET.