How to generate and insert a QR code in a Word Document?
Syncfusion® Essential® DocIO is a .NET Word library used to create, read, edit, and convert Word documents programmatically without Microsoft Word or interop dependencies. Using this library, you can generate and insert a QR code in a Word Document using C#.
To create a QR code in a Word document, first generate the QR code using Essential® PDF, convert it into an image, and then insert the image into the Word document.
Steps to generate and insert a QR code in a Word Document:
-
Create a new .NET Core console application project.
-
Install the Syncfusion.DocIO.Net.Core NuGet package as a reference to your project from NuGet.org.
-
Install the Syncfusion.Pdf.Imaging.Net.Core NuGet package as a reference to your project from NuGet.org.
Starting with v16.2.0.x, if you reference Syncfusion® assemblies from trial setup or from the NuGet feed, include a license key in your projects. Refer to the link to learn about generating and registering a Syncfusion® license key in your application to use the components without trail message.
- Include the following namespaces in Program.cs file
C#
using Syncfusion.DocIO;
using Syncfusion.DocIO.DLS;
using Syncfusion.Drawing;
using Syncfusion.Pdf.Barcode;
using Syncfusion.Pdf.Graphics;
- Use the following code example to insert the generated QR code in a Word Document.
C#
using (WordDocument document = new WordDocument())
{
// Inserts one section and one paragraph in the Word document
document.EnsureMinimal();
// Gets the last paragraph of the document
WParagraph paragraph = document.LastParagraph;
// Appending text to the Paragraph
paragraph.AppendText("QR Code \n");
// Generate QR code and get the FileStream
FileStream qrImageStream = CreateQRCode();
// Append QR code image to paragraph
paragraph.AppendPicture(qrImageStream);
// Close the stream after appending the picture
qrImageStream.Close();
// Saves the Word document file to file system
using (FileStream outputStream = new FileStream(Path.GetFullPath(@"Output/Result.docx"), FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite))
{
document.Save(outputStream, FormatType.Docx);
}
}
- Use the following code example to generated QR code and save as image.
C#
static FileStream CreateQRCode()
{
PdfQRBarcode qrBarcode = new PdfQRBarcode();
// Sets the Input mode to Binary mode
qrBarcode.InputMode = InputMode.BinaryMode;
// Automatically select the Version
qrBarcode.Version = QRCodeVersion.Auto;
// Set the Error correction level to high
qrBarcode.ErrorCorrectionLevel = PdfErrorCorrectionLevel.High;
// Set dimension for each block
qrBarcode.XDimension = 4;
qrBarcode.Text = "This is a sample QR Code";
// Generate a temporary file path
string tempFilePath = Path.GetTempFileName() + ".png";
// Save the QR code as an image to a file
using (Stream imageStream = qrBarcode.ToImage(new SizeF(300, 300)))
{
using (FileStream fileStream = new FileStream(tempFilePath, FileMode.Create, FileAccess.Write))
{
imageStream.CopyTo(fileStream);
}
}
// Return FileStream for the saved image
return new FileStream(tempFilePath, FileMode.Open, FileAccess.Read);
}
You can download a complete working sample to generate and insert a QR code in a Word Document from the GitHub.
Take a moment to peruse the documentation where you can find basic Word document processing options along with the features like mail merge, merge, split, and compare Word documents, find and replace text in the Word document, protect the Word documents, and most importantly, the PDF and Image conversions with code examples.
Conclusion
I hope you enjoyed learning about how to generate and insert a QR code in a Word Document in .NET Core Word document.
You can refer to our ASP.NET Core DocIO feature tour page to know about its other groundbreaking feature representations and documentation, and how to quickly get started for configuration specifications. You can also explore our ASP.NET Core DocIO example to understand how to create and manipulate data.
For current customers, you can check out our components from the License and Downloads page. If you are new to Syncfusion®, you can try our 30-day free trial to check out our other controls.
If you have any queries or require clarifications, please let us know in the comments section below. You can also contact us through our support forums, Direct-Trac, or feedback portal. We are always happy to assist you!