How to Generate QR Code in C# Windows Applications
This tutorial provides an in-depth look at how to create QR codes, which are becoming increasingly popular in industrial applications and the retail sector. The IronBarcode library, one of the most popular and powerful libraries, will be used to demonstrate how to generate QR codes.
How to Generate QR Codes in C# Windows Forms Applications
- Create a Windows Forms Application in Microsoft Visual Studio
- Installing the QR code library
- Importing namespaces to create barcodes
- Creating a QR code with one line of code
- Adding a logo to a QR code image
- Saving an image as PDF or HTML
1. Create a Windows Forms Application in Microsoft Visual Studio
Open Visual Studio > Click on Create New Project > Select Windows Forms Application Template > Press Next > Name the Project > Press Next > Select your Target .NET Framework > Click the Create button.
After creating the project, design the form using the following controls from the Visual Studio toolbox: PictureBox, Label, TextBox, and Button.
A Windows Forms Application UI to load an image and generate a QR Code
2. Install the QR Code Generator .NET Library in C#
The first step is to install the barcode library. You can do this by using one of the following three methods:
2.1. Package Manager Console
Write the following command in the Package Manager Console. It will download and install the package for you.
Install-Package BarCode
Installation progress in Package Manager Console UI
2.2. NuGet Packages Manager Solution
You can also install the barcode library using the NuGet Package Solution. Simply follow these steps:
Click on Tools > NuGet Package Manager > Manage NuGet Packages for Solution.
This will open the NuGet Package Manager for you. Click on Browse, search for BarCode, and then install the class library.
Finding BarCode library in NuGet Package Manager
2.3. Download from the Link
As an alternative, the IronBarCode.Dll can be downloaded and added to your project as a reference from .NET Barcode DLL.
3. Importing NameSpaces
For this tutorial, to ensure adequate references, the IronBarCode namespace along with other system assemblies is necessary.
using IronBarCode; // Provides functionality for QR and barcode generation
using System; // Contains fundamental classes and base classes that define commonly-used value and reference data types
using System.Drawing; // Provides access to GDI+ basic graphic functionality
using System.Linq; // Provides classes and interfaces that support queriesusing IronBarCode; // Provides functionality for QR and barcode generation
using System; // Contains fundamental classes and base classes that define commonly-used value and reference data types
using System.Drawing; // Provides access to GDI+ basic graphic functionality
using System.Linq; // Provides classes and interfaces that support queries4. Create a QR Code with 1 Line of Code
The following sample code allows you to generate a QR code image with just one line of code. Enter the desired text into the text box for which you want to generate a QR code. Place this code in the "Generate PNG" button click event. The QR code images can be saved in PNG format.
// Simple QR Code generation
private void button1_Click(object sender, EventArgs e)
{
// Generate a QR code from the text provided in the TextBox
GeneratedBarcode qrCode = QRCodeWriter.CreateQrCode(textBox1.Text);
// Save the generated QR code as a PNG file
qrCode.SaveAsPng("QrCode.png");
}// Simple QR Code generation
private void button1_Click(object sender, EventArgs e)
{
// Generate a QR code from the text provided in the TextBox
GeneratedBarcode qrCode = QRCodeWriter.CreateQrCode(textBox1.Text);
// Save the generated QR code as a PNG file
qrCode.SaveAsPng("QrCode.png");
}Here is the output of the QR code generator:
QR code of: https://ironsoftware.com/csharp/barcode/docs/
5. Adding a Logo to a QR Code Image
By using the CreateQrCodeWithLogo method from the QRCodeWriter class, additional information, such as a logo, can be added to the QR code. The sample code illustrates how easy this is.
Browse the logo from your computer, and it will open in PictureBox. The code goes as follows:
// Open file dialog to select an image
OpenFileDialog open = new OpenFileDialog();
// Set image file filters to ensure valid image types are opened
open.Filter = "Image Files(*.jpg; *.png; *.jpeg; *.gif; *.bmp)|*.jpg; *.png; *.jpeg; *.gif; *.bmp";
if (open.ShowDialog() == DialogResult.OK) {
// Display image in PictureBox and store file path for later use
pictureBox1.Image = new Bitmap(open.FileName);
// Store image file path in class data member
ImageFileName = open.FileName;
}// Open file dialog to select an image
OpenFileDialog open = new OpenFileDialog();
// Set image file filters to ensure valid image types are opened
open.Filter = "Image Files(*.jpg; *.png; *.jpeg; *.gif; *.bmp)|*.jpg; *.png; *.jpeg; *.gif; *.bmp";
if (open.ShowDialog() == DialogResult.OK) {
// Display image in PictureBox and store file path for later use
pictureBox1.Image = new Bitmap(open.FileName);
// Store image file path in class data member
ImageFileName = open.FileName;
}Next, simply type the text in the text box, place this code in the Generate PNG button, and click.
// Generate a QR code with a logo
GeneratedBarcode qrCode = QRCodeWriter.CreateQrCodeWithLogo(textBox1.Text, ImageFileName, 500);
// Save the generated QR code with logo as a PNG file
qrCode.SaveAsPng("QrCodeWithImage.png");// Generate a QR code with a logo
GeneratedBarcode qrCode = QRCodeWriter.CreateQrCodeWithLogo(textBox1.Text, ImageFileName, 500);
// Save the generated QR code with logo as a PNG file
qrCode.SaveAsPng("QrCodeWithImage.png");This code adds the Iron logo to the barcode. It automatically sizes it to an appropriate size where the pure code is still readable and aligns that logo to the QR code square grid so that it looks appropriate.
C# Create QR Code With Logo Image
6. Save as a PDF or HTML Image
Finally, the generated QR code can be saved as a PDF or HTML image. The final line of code opens the PDF in your default PDF browser for your convenience. Add the SaveAsPdf in the Generate PDF button and SaveAsHtmlFile in the Generate HTML button.
// Generate a QR code with a logo
GeneratedBarcode qrCode = QRCodeWriter.CreateQrCodeWithLogo(textBox1.Text, ImageFileName, 500);
// Save the QR code as a PDF file
qrCode.SaveAsPdf("QRWithLogo.pdf");
// Also, save the QR code as an HTML file
qrCode.SaveAsHtmlFile("QRWithLogo.html");// Generate a QR code with a logo
GeneratedBarcode qrCode = QRCodeWriter.CreateQrCodeWithLogo(textBox1.Text, ImageFileName, 500);
// Save the QR code as a PDF file
qrCode.SaveAsPdf("QRWithLogo.pdf");
// Also, save the QR code as an HTML file
qrCode.SaveAsHtmlFile("QRWithLogo.html");Summary
IronBarcode features a friendly API for developers to read and write data to barcodes and QR codes for C# .NET, optimizing accuracy and ensuring a low error rate in real-world cases. For more information about IronBarcode, please visit this documentation website.
Additionally, IronBarcode also supports reading barcodes from images, as well as providing extra options to read barcodes with more accuracy or apply filters to images.
Currently, if you buy the complete Iron Suite, you can get five libraries for the price of just two. Please visit the pricing page for more details.
Frequently Asked Questions
How can I generate a QR code in C# Windows Applications?
You can use the IronBarcode library to generate a QR code in C# Windows Applications by utilizing the QRCodeWriter.CreateQrCode method. This allows you to generate a QR code from text input and save it as a PNG file.
What are the benefits of using IronBarcode for QR code generation?
IronBarcode provides a user-friendly API for QR code generation with high accuracy and low error rates. It also supports additional features like adding logos to QR codes and saving QR codes as PDFs or HTML files.
How do I set up a Windows Forms Application in Microsoft Visual Studio for QR code generation?
To set up a Windows Forms Application in Microsoft Visual Studio, open Visual Studio, select 'Create New Project', choose 'Windows Forms Application Template', name your project, select the target .NET Framework, and click 'Create'.
What is the process of installing the QR code library in a C# project?
The IronBarcode library can be installed in a C# project via the Package Manager Console, NuGet Package Manager Solution, or by downloading the IronBarCode.DLL directly.
Can I add a logo to a QR code using IronBarcode?
Yes, you can add a logo to a QR code using the IronBarcode library by using the CreateQrCodeWithLogo method from the QRCodeWriter class, which allows you to select an image from your computer.
Is it possible to convert a QR code to PDF or HTML using IronBarcode?
Yes, IronBarcode allows you to convert a QR code to a PDF using SaveAsPdf or to an HTML file using SaveAsHtmlFile.
What namespaces are necessary for generating QR codes with IronBarcode?
To generate QR codes with IronBarcode, you need to include the 'IronBarCode' namespace, along with system namespaces such as System, System.Drawing, and System.Linq.
What additional barcode features does IronBarcode provide?
IronBarcode supports reading various barcode formats from images, offering options for enhanced accuracy and the ability to apply filters to improve barcode recognition.
Where can I find more detailed documentation on using IronBarcode?
You can visit the IronBarcode documentation website for more detailed information and guidance on using the library for QR code generation and other barcode-related tasks.









