Como imprimir um código QR em C#
Códigos QR, ou Codes de Resposta Rápida, tornaram-se ubíquos em nossa era digital. Eles armazenam informações em uma matriz de quadrados pretos em um fundo branco e podem ser escaneados usando um smartphone ou leitor de código QR dedicado. Esses códigos QR/códigos de barras usando .NET barcode DLL são usados para vários propósitos, incluindo rotulagem de produtos, pagamentos móveis e materiais de marketing. Imprimir códigos QR é crucial para integrar interações físicas e digitais de maneira contínua.
Neste artigo, vamos primeiro gerar um código QR em C# usando a IronQR, a biblioteca geradora de código QR, depois convertê-lo em PDF usando a IronPDF, e finalmente imprimir o documento com imagem de código QR usando a biblioteca C# IronPrint.
How to Print a QR Code in C
- Criar um Projeto no Visual Studio
- Instale as bibliotecas IronQR, IronPDF e IronPrint
- Crie um Código QR usando o método QrWriter.Write()
- Salve o Código QR gerado como uma imagem usando o método SaveAs
- Crie um documento PDF usando ImageToPdfConverter do IronPDF
- Ajuste PrinterSettings usando o IronPrint
- Imprima usando o método Printer.Print() do IronPrint
IronPrint - The C# Printing Library
IronPrint, desenvolvido pela Iron Software, é uma poderosa biblioteca de impressão for .NET, oferecendo um conjunto versátil de ferramentas para lidar com tarefas de impressão em C#. Ele suporta uma ampla gama de ambientes, incluindo Windows, macOS, Android e iOS. Neste artigo, exploraremos como IronPrint, em conjunto com IronQR e IronPDF, pode ser utilizado para criar códigos QR, converter e imprimir códigos QR em um aplicativo de console C#.
Recursos do IronPrint
IronPrint se diferencia com classes e métodos dedicados voltados para funcionalidades relacionadas à impressão. As principais características incluem:
- Configurações de Impressão Abrangentes: IronPrint permite que os desenvolvedores personalizem vários aspectos do processo de impressão, como tamanho do papel, orientação, DPI, número de cópias, nome da impressora, margens e impressão em escala de cinza.
- Impressão Versátil com Classe Printer: A biblioteca introduz a classe Printer, fornecendo um conjunto abrangente de métodos para impressão de vários tipos de arquivo, incluindo imagens e documentos PDF.
- Suporte Multiplataforma: IronPrint suporta impressão em várias plataformas, tornando-o adequado para uma variedade de aplicativos.
Pré-requisitos
Antes de mergulhar nos passos de criação de um aplicativo de console em C# para imprimir códigos QR, certifique-se de ter os seguintes pré-requisitos:
- Visual Studio: Instale o Microsoft Visual Studio, um poderoso ambiente de desenvolvimento integrado para C#. Você pode baixá-lo de seu site oficial.
- Biblioteca IronQR: Esta biblioteca é essencial para gerar códigos QR. Instale-a usando o Console do NuGet ou diretamente do IronQR site oficial do NuGet website.
- Biblioteca IronPDF: IronPDF será usada para converter as imagens de código de barras QR geradas em um PDF. Instale-a usando o mesmo método de instalação via NuGet.
- Biblioteca IronPrint: Finalmente, instale a biblioteca IronPrint para habilitar a impressão sem problemas em sua aplicação C#.
Create a C# Console Application in Visual Studio
Siga estas etapas para configurar uma aplicação de console C# no Visual Studio:
- Abra o Visual Studio e crie um novo Aplicativo de Console C#
-
Configure o Projeto da seguinte forma e clique "Próximo"

- Em seguida, para informações adicionais, escolha o .NET Framework e clique em "Criar".
Instale Bibliotecas Necessárias via o Gerenciador de Pacotes NuGet
Siga os passos para instalar as bibliotecas necessárias:
- Abra o Console do Gerenciador de Pacotes NuGet ou o Gerenciador de Pacotes NuGet para Soluções usando o menu Ferramentas ou o Explorador de Soluções no projeto Visual Studio.
-
Instale a biblioteca de Código QR IronQR:
-
Usando o Console do Gerenciador de Pacotes NuGet, adicione o seguinte comando:
Install-Package IronPrint
- Usando o Gerenciar Pacotes NuGet para Soluções: Na aba de navegação do NuGet, pesquise por "IronQR", biblioteca de Código QR e clique em Instalar.

-
-
Instale a Biblioteca PDF IronPDF:
-
Usando o Console do Gerenciador de Pacotes NuGet, insira o seguinte comando:
Install-Package IronPrint
- Usando o Gerenciar Pacotes NuGet para Soluções: Na guia de navegação do NuGet, procure a biblioteca 'IronPDF' e clique em Instalar.

-
-
Instale a Biblioteca de Impressão IronPrint:
-
Usando o Console do Gerenciador de Pacotes NuGet, adicione o seguinte comando:
Install-Package IronPrint
- Usando o Gerenciar Pacotes NuGet para Soluções: Na guia de navegação do NuGet, procure a biblioteca 'IronPrint' e clique em instalar.

-
Passos para Criar, Converter e Imprimir Códigos QR
Vamos detalhar o processo de criação de Códigos QR, conversão de códigos QR para PDF e, finalmente, impressão do resultado do gerador de código QR em um procedimento passo a passo usando IronQR, IronPDF e IronPrint.
Step-by-Step Procedure to Print C# QR Code
Passo 1: Referenciar Bibliotecas
No arquivo Program.cs no topo, incluiremos referências às bibliotecas necessárias. Isso garante que as bibliotecas estejam instaladas e prontas para uso.
// Reference to libraries
using IronPrint; // Library for printing functionalities
using IronPdf; // Library for PDF handling
using IronQr; // Library for QR code generation
using IronSoftware.Drawing; // Library for image processing
// Reference to libraries
using IronPrint; // Library for printing functionalities
using IronPdf; // Library for PDF handling
using IronQr; // Library for QR code generation
using IronSoftware.Drawing; // Library for image processing
' Reference to libraries
Imports IronPrint ' Library for printing functionalities
Imports IronPdf ' Library for PDF handling
Imports IronQr ' Library for QR code generation
Imports IronSoftware.Drawing ' Library for image processing
Passo 2: Crie um Código QR Usando o IronQR
Neste passo, primeiramente, vamos gerar um código QR usando IronQR e depois salvá-lo como uma imagem, conforme mostrado no exemplo de código a seguir:
// Code to create a QR code using IronQR
QrCode myQr = QrWriter.Write("Hello IronPrint!"); // Generate a QR code with the message
AnyBitmap qrImage = myQr.Save(); // Save QR code as an image
qrImage.SaveAs("assets/qr.png"); // Save the png image file to the "assets" folder
// Code to create a QR code using IronQR
QrCode myQr = QrWriter.Write("Hello IronPrint!"); // Generate a QR code with the message
AnyBitmap qrImage = myQr.Save(); // Save QR code as an image
qrImage.SaveAs("assets/qr.png"); // Save the png image file to the "assets" folder
' Code to create a QR code using IronQR
Dim myQr As QrCode = QrWriter.Write("Hello IronPrint!") ' Generate a QR code with the message
Dim qrImage As AnyBitmap = myQr.Save() ' Save QR code as an image
qrImage.SaveAs("assets/qr.png") ' Save the png image file to the "assets" folder
Neste trecho de código:
- Um código QR é gerado com a mensagem "Hello IronPrint!" usando a classe QrWriter. O método Write() permite a geração de um Código QR com uma mensagem ou até mesmo com dados numéricos.
- O código QR é então salvo como um arquivo AnyBitmap, uma classe Bitmap universalmente compatível com C# fornecida pela IronSoftware.
- A imagem do código QR é salva na pasta 'assets' com o nome 'qr.png'.
Aqui está a saída do código QR:

Passo 3: Converta a Imagem do QR para PDF Usando o IronPDF
Em seguida, vamos converter a imagem do código QR para um PDF usando IronPDF. Os PDFs preservam o formato do documento e são adequados para compartilhamento e impressão. Aqui, cada arquivo de imagem será colocado em uma página separada do arquivo PDF.
// Code to convert QR Image to PDF using IronPDF
var imageFiles = Directory.EnumerateFiles("assets").Where(f => f.EndsWith(".jpg") || f.EndsWith(".png")); // Reading QR codes image files
// Convert the QR code images to a PDF and save it
ImageToPdfConverter.ImageToPdf(imageFiles).SaveAs("assets/composite.pdf");
// Code to convert QR Image to PDF using IronPDF
var imageFiles = Directory.EnumerateFiles("assets").Where(f => f.EndsWith(".jpg") || f.EndsWith(".png")); // Reading QR codes image files
// Convert the QR code images to a PDF and save it
ImageToPdfConverter.ImageToPdf(imageFiles).SaveAs("assets/composite.pdf");
' Code to convert QR Image to PDF using IronPDF
Dim imageFiles = Directory.EnumerateFiles("assets").Where(Function(f) f.EndsWith(".jpg") OrElse f.EndsWith(".png")) ' Reading QR codes image files
' Convert the QR code images to a PDF and save it
ImageToPdfConverter.ImageToPdf(imageFiles).SaveAs("assets/composite.pdf")
Neste trecho de código:
- Primeiramente, enumera arquivos de imagem na pasta 'assets' com extensões '.jpg' ou '.png' e então prossegue lendo códigos QR do diretório.
- Utiliza o método ImageToPdfConverter.ImageToPdf() do IronPDF para converter as imagens para um PDF nomeado 'composite.pdf'.
Aqui está o resultado:

Passo 4: Imprima PDF Usando o IronPrint
Finalmente, usaremos IronPrint - uma biblioteca de Impressão versátil para imprimir o PDF gerado com Configurações de Impressora.
// Code for Printing using IronPrint
// Get available printer names
List<string> printerNames = Printer.GetPrinterNames();
// Create print settings object
PrintSettings printerSettings = new PrintSettings();
foreach(string printerName in printerNames)
{
// Set desired printer name
if(printerName.Equals("Microsoft Print to PDF"))
printerSettings.PrinterName = printerName;
}
//Configure print setting
printerSettings.PaperSize = PaperSize.A4; // Set paper size
Margins margins = new Margins(30,10); // Set paper margins
printerSettings.PaperMargins = margins; // Apply margins
Printer.Print("assets/composite.pdf", printerSettings); // Print the PDF
// Code for Printing using IronPrint
// Get available printer names
List<string> printerNames = Printer.GetPrinterNames();
// Create print settings object
PrintSettings printerSettings = new PrintSettings();
foreach(string printerName in printerNames)
{
// Set desired printer name
if(printerName.Equals("Microsoft Print to PDF"))
printerSettings.PrinterName = printerName;
}
//Configure print setting
printerSettings.PaperSize = PaperSize.A4; // Set paper size
Margins margins = new Margins(30,10); // Set paper margins
printerSettings.PaperMargins = margins; // Apply margins
Printer.Print("assets/composite.pdf", printerSettings); // Print the PDF
' Code for Printing using IronPrint
' Get available printer names
Dim printerNames As List(Of String) = Printer.GetPrinterNames()
' Create print settings object
Dim printerSettings As New PrintSettings()
For Each printerName As String In printerNames
' Set desired printer name
If printerName.Equals("Microsoft Print to PDF") Then
printerSettings.PrinterName = printerName
End If
Next printerName
'Configure print setting
printerSettings.PaperSize = PaperSize.A4 ' Set paper size
Dim margins As New Margins(30,10) ' Set paper margins
printerSettings.PaperMargins = margins ' Apply margins
Printer.Print("assets/composite.pdf", printerSettings) ' Print the PDF
Neste trecho de código:
- Obtém nomes de impressoras disponíveis usando
Printer.GetPrinterNames(). - Define o nome da impressora desejada (neste caso, 'Microsoft Print to PDF' para demonstrar o processo de impressão). Se não for especificado, usará a impressora padrão conectada.
- Configura as configurações de impressão, especificando o tamanho do papel como A4 e definindo margens. A estrutura de margens possui vários overloads e também apresenta campos como Superior, Inferior, Esquerdo e Direito para definir a margem conforme necessário.
- Imprime o PDF usando um
Printer.Print(). O primeiro argumento é o caminho para o arquivo a ser impresso e o segundo é oprinterSettingsse especificado.
Aqui está a saída do arquivo impresso. Isso mostra como a imagem será impressa:

Imprimir para uma impressora física é muito mais fácil com IronPrint. Para obter mais controle durante a impressão, você pode usar o método ShowPrintDialog(). Para mais informações sobre como Imprimir de forma eficiente, por favor, visite esta página de documentação.
Advantages of IronPrint for Printing in C
IronPrint é especificamente projetado como uma biblioteca de impressão poderosa para aplicações .NET. Ao contrário do IronPDF, que é principalmente focado em lidar com tarefas relacionadas a PDF, e da impressão da Microsoft, que é um mecanismo de impressão de propósito geral, o IronPrint fornece um conjunto dedicado de classes e métodos adaptados para controle detalhado sobre o processo de impressão.
Com IronPrint, os desenvolvedores podem aproveitar:
1. Impressão Assíncrona
O IronPrint fornece funções assíncronas, evitando que operações de impressão bloqueiem threads e melhorando o desempenho.
2. Impressão Versátil
A classe Printer dedicada no IronPrint permite a impressão versátil de vários tipos de arquivos, oferecendo flexibilidade além da impressão padrão.
3. Suporte Multiplataforma
O IronPrint suporta várias plataformas, incluindo Windows, Android, iOS e macOS, tornando-o adequado para diversos ambientes de aplicação.
4. Configurações de Impressão Personalizáveis
Os desenvolvedores podem controlar finamente as configurações de impressão, incluindo tamanho do papel, orientação, DPI, número de cópias e muito mais, através da classe PrintSettings.
Conclusão
Em conclusão, a combinação de IronPrint, IronQR e IronPDF fornece uma solução robusta para criar, converter e imprimir códigos QR em C#. As vantagens da impressão assíncrona, opções de impressão versáteis e suporte multiplataforma tornam IronPrint uma ferramenta valiosa para os desenvolvedores. Seguindo as etapas detalhadas descritas neste guia, você pode gerar códigos de barras QR e também integrar facilmente sua impressão em seus aplicativos C#, unindo a interação física e digital.
IronPrint oferece uma licença de teste gratuita a partir de $799. Baixe a biblioteca a partir de aqui e experimente.
Perguntas frequentes
Como faço para gerar um código QR em C#?
Para gerar um código QR em C#, utilize a biblioteca IronQR. Você pode criar um código QR utilizando o método QrWriter.Write() da IronQR para produzir um código QR com a mensagem ou os dados desejados.
Como posso converter uma imagem de código QR em um PDF em C#?
Você pode converter uma imagem de código QR em um PDF em C# usando o método ` ImageToPdfConverter.ImageToPdf() do IronPDF. Essa função permite transformar arquivos de imagem em um documento PDF sem esforço.
Quais são os passos envolvidos na impressão de um código QR usando C#?
Os passos incluem gerar um código QR usando o IronQR, convertê-lo em PDF com o IronPDF e, finalmente, imprimir o documento usando o método Printer.Print() do IronPrint com as configurações especificadas.
É possível personalizar as configurações de impressão de códigos QR em C#?
Sim, você pode personalizar as configurações de impressão usando a classe PrintSettings do IronPrint. Ela permite especificar o tamanho do papel, a orientação, o DPI, as margens e outras configurações para atender às suas necessidades de impressão.
Posso usar este método de impressão em diferentes sistemas operacionais?
Sim, o IronPrint oferece suporte a recursos de impressão multiplataforma, sendo compatível com diversos sistemas operacionais, incluindo Windows, macOS, Android e iOS.
Quais são os benefícios de usar o IronPrint para imprimir códigos QR?
O IronPrint oferece benefícios como impressão assíncrona, suporte a vários tipos de arquivo, compatibilidade entre plataformas e a capacidade de personalizar as configurações de impressão, tornando-o uma escolha eficiente para tarefas de impressão em C#.
Como posso solucionar problemas ao imprimir códigos QR em C#?
As etapas comuns de resolução de problemas incluem garantir que todas as bibliotecas necessárias estejam instaladas corretamente, verificar as configurações de impressão no IronPrint e verificar se há erros nos processos de geração de código QR e conversão de PDF.
Existe alguma forma de experimentar o IronPrint antes de comprar?
Sim, o IronPrint oferece um período de teste gratuito, permitindo que você explore seus recursos e avalie sua integração com seus aplicativos C# antes de tomar uma decisão de compra.



