O que é um QR Code?
[Wikipedia] Código QR é um código de barras o mesmo podemos chamar de código barrametrico bidimensional que pode ser facilmente escaneado usando a maioria dos telefones celulares equipados com câmera.
Projeto para gerar de QR Code em C#.
Gerar um QR Code com C# usando apenas 5 linhas de código, é possível? Sim, neste artigo vamos usar a elegante biblioteca QRCoder disponível no GitHub de autoria Raffael Herrmann. Sem dúvidas uma das bibliotecas para gerar QR Code mais fáceis de usar.
Inicie um novo projeto Aplicativo do Windows Forms (.Net Framework) no Visual Studio.
Adicione no Form do seu projeto um textbox, um botão e uma PictureBox; assim;
Para evitar que a imagem do QRCode fique distorcida, eu recomento que ajuste a propriedade SizeMode da PictureBox para StretchImage
Instalando a biblioteca QRCoder via NuGet
O Visual Studio conta com o repositório da NuGet, o que facilita muito a nossa vida de desenvolvedor. Para instalar siga os passos;
- Clique no menu PROJETO > GERENCIADOR DE PACOTES DO NUGET
- Clique na guia PROCURAR
- No campo de busca, digite QRCoder
- Clique em Instalar.
Instanciando a classe QRCoder
Com a biblioteca já instalada, vamos instanciá-la em nosso projeto. Na cláusula USING coloque;
using QRCoder;
Programando o botão para gerar o QR Code
Agora, a parte mais legal, dentro do botão adicione o seguinte código;
QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode(textBox1.Text, QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData);
Bitmap qrCodeImage = qrCode.GetGraphic(20);
pictureBox1.Image = qrCodeImage;
Está pronto! Há, você não sabia ia ser tão fácil… agora é só testar e gritar Corinthians bem alto para dar sorte.
Salvando o QR Code em um arquivo
Para Salvar o QR Code gerado na PictureBox é algo extremamente difícil e é por isso que o Blogson existe. Para resolver isso acrescente mais um botão Salvar.
Dentro deste botão, acrescente o seguinte código;
string Caminho = Application.StartupPath + "\\MeuQRCode.jpg"; pictureBox1.Image.Save(Caminho); MessageBox.Show("Salvo Com sucesso!");
O arquivo será salvo junto com a sua aplicação executável, normalmente dentro da pasta DEBUG do seu projeto.
Obviamente é possível salvar seu QR Code em uma pasta selecionada pelo próprio usuário, neste caso será necessário usar o componente SAVE FILE DIALOG. No artigo Captura de tela com C# tem um código que pode ser usado como exemplo, dê uma conferida.