using IronQr;using IronSoftware.Drawing;string text = "Hello, World!";string url = "https://ironsoftware.com/csharp/qr/";string alphanumeric = "WATERSKU-12356";// Create QR codeQrCode textQr = QrWriter.Write(text);// Save QR code as a bitmapAnyBitmap textQrImage = textQr.Save();// Save QR code as filetextQrImage.SaveAs("textQr.png");QrCode urlQr = QrWriter.Write(url);AnyBitmap urlQrImage = urlQr.Save();urlQrImage.SaveAs("urlQr.png");QrCode alphanumericQr = QrWriter.Write(alphanumeric);AnyBitmap alphanumericQrImage = alphanumericQr.Save();alphanumericQrImage.SaveAs("alphanumericQr.png");
using IronQr;
using IronSoftware.Drawing;
string text = "Hello, World!";
string url = "https://ironsoftware.com/csharp/qr/";
string alphanumeric = "WATERSKU-12356";
// Create QR code
QrCode textQr = QrWriter.Write(text);
// Save QR code as a bitmap
AnyBitmap textQrImage = textQr.Save();
// Save QR code as file
textQrImage.SaveAs("textQr.png");
QrCode urlQr = QrWriter.Write(url);
AnyBitmap urlQrImage = urlQr.Save();
urlQrImage.SaveAs("urlQr.png");
QrCode alphanumericQr = QrWriter.Write(alphanumeric);
AnyBitmap alphanumericQrImage = alphanumericQr.Save();
alphanumericQrImage.SaveAs("alphanumericQr.png");
ImportsIronQrImportsIronSoftware.DrawingPrivate text AsString = "Hello, World!"Private url AsString = "https://ironsoftware.com/csharp/qr/"Private alphanumeric AsString = "WATERSKU-12356"' Create QR codePrivate textQr AsQrCode = QrWriter.Write(text)' Save QR code as a bitmapPrivate textQrImage AsAnyBitmap = textQr.Save()' Save QR code as filetextQrImage.SaveAs("textQr.png")Dim urlQr AsQrCode = QrWriter.Write(url)Dim urlQrImage AsAnyBitmap = urlQr.Save()urlQrImage.SaveAs("urlQr.png")Dim alphanumericQr AsQrCode = QrWriter.Write(alphanumeric)Dim alphanumericQrImage AsAnyBitmap = alphanumericQr.Save()alphanumericQrImage.SaveAs("alphanumericQr.png")
Imports IronQr
Imports IronSoftware.Drawing
Private text As String = "Hello, World!"
Private url As String = "https://ironsoftware.com/csharp/qr/"
Private alphanumeric As String = "WATERSKU-12356"
' Create QR code
Private textQr As QrCode = QrWriter.Write(text)
' Save QR code as a bitmap
Private textQrImage As AnyBitmap = textQr.Save()
' Save QR code as file
textQrImage.SaveAs("textQr.png")
Dim urlQr As QrCode = QrWriter.Write(url)
Dim urlQrImage As AnyBitmap = urlQr.Save()
urlQrImage.SaveAs("urlQr.png")
Dim alphanumericQr As QrCode = QrWriter.Write(alphanumeric)
Dim alphanumericQrImage As AnyBitmap = alphanumericQr.Save()
alphanumericQrImage.SaveAs("alphanumericQr.png")
二进制和流
同样地,我们可以使用前面提到的相同 Write 方法将二进制数据和流转换为QR码。
using IronQr;using IronSoftware.Drawing;using System.Text;byte[] bytes = Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/");// Create QR codeQrCode bytesQr = QrWriter.Write(bytes);// Save QR code as a bitmapAnyBitmap qrImage = bytesQr.Save();// Save QR code bitmap to fileqrImage.SaveAs("bytesQr.png");
using IronQr;
using IronSoftware.Drawing;
using System.Text;
byte[] bytes = Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/");
// Create QR code
QrCode bytesQr = QrWriter.Write(bytes);
// Save QR code as a bitmap
AnyBitmap qrImage = bytesQr.Save();
// Save QR code bitmap to file
qrImage.SaveAs("bytesQr.png");
ImportsIronQrImportsIronSoftware.DrawingImportsSystem.TextPrivate bytes() AsByte = Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/")' Create QR codePrivate bytesQr AsQrCode = QrWriter.Write(bytes)' Save QR code as a bitmapPrivate qrImage AsAnyBitmap = bytesQr.Save()' Save QR code bitmap to fileqrImage.SaveAs("bytesQr.png")
Imports IronQr
Imports IronSoftware.Drawing
Imports System.Text
Private bytes() As Byte = Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/")
' Create QR code
Private bytesQr As QrCode = QrWriter.Write(bytes)
' Save QR code as a bitmap
Private qrImage As AnyBitmap = bytesQr.Save()
' Save QR code bitmap to file
qrImage.SaveAs("bytesQr.png")
using IronQr;using IronSoftware.Drawing;using System.IO;using System.Text;MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/"));// Create QR codeQrCode streamQr = QrWriter.Write(stream);// Save QR code as a bitmapAnyBitmap streamQrImage = streamQr.Save();// Save QR code bitmap as filestreamQrImage.SaveAs("streamQr.png");
using IronQr;
using IronSoftware.Drawing;
using System.IO;
using System.Text;
MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/"));
// Create QR code
QrCode streamQr = QrWriter.Write(stream);
// Save QR code as a bitmap
AnyBitmap streamQrImage = streamQr.Save();
// Save QR code bitmap as file
streamQrImage.SaveAs("streamQr.png");
ImportsIronQrImportsIronSoftware.DrawingImportsSystem.IOImportsSystem.TextPrivate stream As New MemoryStream(Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/"))' Create QR codePrivate streamQr AsQrCode = QrWriter.Write(stream)' Save QR code as a bitmapPrivate streamQrImage AsAnyBitmap = streamQr.Save()' Save QR code bitmap as filestreamQrImage.SaveAs("streamQr.png")
Imports IronQr
Imports IronSoftware.Drawing
Imports System.IO
Imports System.Text
Private stream As New MemoryStream(Encoding.UTF8.GetBytes("https://ironsoftware.com/csharp/qr/"))
' Create QR code
Private streamQr As QrCode = QrWriter.Write(stream)
' Save QR code as a bitmap
Private streamQrImage As AnyBitmap = streamQr.Save()
' Save QR code bitmap as file
streamQrImage.SaveAs("streamQr.png")
using IronQr;using IronSoftware.Drawing;// Create a QR code objectQrCode qr = QrWriter.Write("hello world");// Save QR code as a bitmapAnyBitmap qrImage = qr.Save();// Save QR code bitmap as fileqrImage.SaveAs("qr.png");
using IronQr;
using IronSoftware.Drawing;
// Create a QR code object
QrCode qr = QrWriter.Write("hello world");
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save();
// Save QR code bitmap as file
qrImage.SaveAs("qr.png");
ImportsIronQrImportsIronSoftware.Drawing' Create a QR code objectPrivate qr AsQrCode = QrWriter.Write("hello world")' Save QR code as a bitmapPrivate qrImage AsAnyBitmap = qr.Save()' Save QR code bitmap as fileqrImage.SaveAs("qr.png")
Imports IronQr
Imports IronSoftware.Drawing
' Create a QR code object
Private qr As QrCode = QrWriter.Write("hello world")
' Save QR code as a bitmap
Private qrImage As AnyBitmap = qr.Save()
' Save QR code bitmap as file
qrImage.SaveAs("qr.png")
using IronQr;using System.Drawing;// Create a QR code objectQrCode qr = QrWriter.Write("hello world");// Save QR code as a bitmapBitmap qrImage = qr.Save();// Save QR code bitmap as fileqrImage.Save("qrBitmap.png");
using IronQr;
using System.Drawing;
// Create a QR code object
QrCode qr = QrWriter.Write("hello world");
// Save QR code as a bitmap
Bitmap qrImage = qr.Save();
// Save QR code bitmap as file
qrImage.Save("qrBitmap.png");
ImportsIronQrImportsSystem.Drawing' Create a QR code objectPrivate qr AsQrCode = QrWriter.Write("hello world")' Save QR code as a bitmapPrivate qrImage AsBitmap = qr.Save()' Save QR code bitmap as fileqrImage.Save("qrBitmap.png")
Imports IronQr
Imports System.Drawing
' Create a QR code object
Private qr As QrCode = QrWriter.Write("hello world")
' Save QR code as a bitmap
Private qrImage As Bitmap = qr.Save()
' Save QR code bitmap as file
qrImage.Save("qrBitmap.png")
IronQR 允许开发人员在现有 PDF 文档上加盖 QR 码,方便他人快速访问链接或其他资源。 支持在单页和多页上印制二维码。
加盖单页印章
创建QR码后,调用 QrCode 对象的 StampToExistingPdfPage 方法。 此方法需要提供文件路径、坐标(x 和 y)、页码以及密码(如果 PDF 受密码保护)。 提供参数后,该方法会在 QR 代码上盖章并保存 PDF。
请注意: 此方法基于PDF页面,页码从1而非0开始。
using IronQr;// Create a QR code objectQrCode qr = QrWriter.Write("hello world");string filepath = "example.pdf";int x = 100;int y = 150;int page = 1;// Stamp QR code to (100, 150) of the pdf on page 1qr.StampToExistingPdfPage(filepath, x, y, page);
using IronQr;
// Create a QR code object
QrCode qr = QrWriter.Write("hello world");
string filepath = "example.pdf";
int x = 100;
int y = 150;
int page = 1;
// Stamp QR code to (100, 150) of the pdf on page 1
qr.StampToExistingPdfPage(filepath, x, y, page);
ImportsIronQr' Create a QR code objectPrivate qr AsQrCode = QrWriter.Write("hello world")Private filepath AsString = "example.pdf"Private x AsInteger = 100Private y AsInteger = 150Private page AsInteger = 1' Stamp QR code to (100, 150) of the pdf on page 1qr.StampToExistingPdfPage(filepath, x, y, page)
Imports IronQr
' Create a QR code object
Private qr As QrCode = QrWriter.Write("hello world")
Private filepath As String = "example.pdf"
Private x As Integer = 100
Private y As Integer = 150
Private page As Integer = 1
' Stamp QR code to (100, 150) of the pdf on page 1
qr.StampToExistingPdfPage(filepath, x, y, page)
using IronQr;using System.Collections.Generic;// Create a QR code objectQrCode qr = QrWriter.Write("hello world");string filepath = "example.pdf";int x = 100;int y = 150;List<int> pages = new List<int>();pages.Add(1);pages.Add(2);pages.Add(3);pages.Add(4);// Stamp QR code to (100, 150) of the pdf on pages 1-4qr.StampToExistingPdfPages(filepath, x, y, pages);
using IronQr;
using System.Collections.Generic;
// Create a QR code object
QrCode qr = QrWriter.Write("hello world");
string filepath = "example.pdf";
int x = 100;
int y = 150;
List<int> pages = new List<int>();
pages.Add(1);
pages.Add(2);
pages.Add(3);
pages.Add(4);
// Stamp QR code to (100, 150) of the pdf on pages 1-4
qr.StampToExistingPdfPages(filepath, x, y, pages);
ImportsIronQrImportsSystem.Collections.Generic' Create a QR code objectPrivate qr AsQrCode = QrWriter.Write("hello world")Private filepath AsString = "example.pdf"Private x AsInteger = 100Private y AsInteger = 150Private pages As New List(OfInteger)()pages.Add(1)pages.Add(2)pages.Add(3)pages.Add(4)' Stamp QR code to (100, 150) of the pdf on pages 1-4qr.StampToExistingPdfPages(filepath, x, y, pages)
Imports IronQr
Imports System.Collections.Generic
' Create a QR code object
Private qr As QrCode = QrWriter.Write("hello world")
Private filepath As String = "example.pdf"
Private x As Integer = 100
Private y As Integer = 150
Private pages As New List(Of Integer)()
pages.Add(1)
pages.Add(2)
pages.Add(3)
pages.Add(4)
' Stamp QR code to (100, 150) of the pdf on pages 1-4
qr.StampToExistingPdfPages(filepath, x, y, pages)
两个示例的输出
QR 代码选项
IronQR 提供广泛的自定义选项,可对 QR 代码行为和功能进行微调。 QrOptions 类提供了多个参数,如版本控制、编码类型、字符编码和错误纠正级别。 让我们来详细探讨一下这些选项。
using IronQr;using IronSoftware.Drawing;QrOptions options = new QrOptions{ // Change encoding to micro QR codeEncoding = IronQr.Enum.QrEncoding.MicroQRCode,};// Create QR codeQrCode qr = QrWriter.Write("1234", options);// Save QR code as a bitmapAnyBitmap qrImage = qr.Save();// Save QR code bitmap as fileqrImage.SaveAs("qrImage.png");
using IronQr;
using IronSoftware.Drawing;
QrOptions options = new QrOptions
{
// Change encoding to micro QR code
Encoding = IronQr.Enum.QrEncoding.MicroQRCode,
};
// Create QR code
QrCode qr = QrWriter.Write("1234", options);
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save();
// Save QR code bitmap as file
qrImage.SaveAs("qrImage.png");
ImportsIronQrImportsIronSoftware.DrawingPrivate options As New QrOptionsWith {.Encoding = IronQr.Enum.QrEncoding.MicroQRCode}' Create QR codePrivate qr AsQrCode = QrWriter.Write("1234", options)' Save QR code as a bitmapPrivate qrImage AsAnyBitmap = qr.Save()' Save QR code bitmap as fileqrImage.SaveAs("qrImage.png")
Imports IronQr
Imports IronSoftware.Drawing
Private options As New QrOptions With {.Encoding = IronQr.Enum.QrEncoding.MicroQRCode}
' Create QR code
Private qr As QrCode = QrWriter.Write("1234", options)
' Save QR code as a bitmap
Private qrImage As AnyBitmap = qr.Save()
' Save QR code bitmap as file
qrImage.SaveAs("qrImage.png")
错误修正
IronQR 采用标准 QR 纠错技术,确保生成的所有 QR 代码即使在恶劣条件下也具有容错性和可靠性。 此外,IronQR 允许您完全控制纠错级别,以便进一步微调。
提供 QrErrorCorrectionLevel 的有四个错误纠正级别:
Highest:30%错误纠正
High:25%错误纠正
Medium:15%错误纠正
Low:7%错误纠正
using IronQr;using IronSoftware.Drawing;QrOptions options = new QrOptions{ // Change error correction level to mediumErrorCorrectionLevel = QrErrorCorrectionLevel.Medium,};// Create QR codeQrCode qr = QrWriter.Write("1234", options);// Save QR code as a bitmapAnyBitmap qrImage = qr.Save();// Save QR code bitmap as fileqrImage.SaveAs("qrImage.png");
using IronQr;
using IronSoftware.Drawing;
QrOptions options = new QrOptions
{
// Change error correction level to medium
ErrorCorrectionLevel = QrErrorCorrectionLevel.Medium,
};
// Create QR code
QrCode qr = QrWriter.Write("1234", options);
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save();
// Save QR code bitmap as file
qrImage.SaveAs("qrImage.png");
ImportsIronQrImportsIronSoftware.DrawingPrivate options As New QrOptionsWith {.ErrorCorrectionLevel = QrErrorCorrectionLevel.Medium}' Create QR codePrivate qr AsQrCode = QrWriter.Write("1234", options)' Save QR code as a bitmapPrivate qrImage AsAnyBitmap = qr.Save()' Save QR code bitmap as fileqrImage.SaveAs("qrImage.png")
Imports IronQr
Imports IronSoftware.Drawing
Private options As New QrOptions With {.ErrorCorrectionLevel = QrErrorCorrectionLevel.Medium}
' Create QR code
Private qr As QrCode = QrWriter.Write("1234", options)
' Save QR code as a bitmap
Private qrImage As AnyBitmap = qr.Save()
' Save QR code bitmap as file
qrImage.SaveAs("qrImage.png")
您可以调整二维码版本,以存储更多数据。 高版本是库存或物流的理想选择,而低版本则适用于较小的数据,如短 URL。 只需更改 QrOptions 对象中的 Version 属性,并将其传递给 Write 方法即可根据需要生成QR码。
using IronQr;using IronSoftware.Drawing;QrOptions options = new QrOptions{ // Change QR code version to 40Version = 40,};// Create QR codeQrCode qr = QrWriter.Write("1234", options);// Save QR code as a bitmapAnyBitmap qrImage = qr.Save();// Save QR code bitmap as fileqrImage.SaveAs("qrImage.png");
using IronQr;
using IronSoftware.Drawing;
QrOptions options = new QrOptions
{
// Change QR code version to 40
Version = 40,
};
// Create QR code
QrCode qr = QrWriter.Write("1234", options);
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save();
// Save QR code bitmap as file
qrImage.SaveAs("qrImage.png");
ImportsIronQrImportsIronSoftware.DrawingPrivate options As New QrOptionsWith {.Version = 40}' Create QR codePrivate qr AsQrCode = QrWriter.Write("1234", options)' Save QR code as a bitmapPrivate qrImage AsAnyBitmap = qr.Save()' Save QR code bitmap as fileqrImage.SaveAs("qrImage.png")
Imports IronQr
Imports IronSoftware.Drawing
Private options As New QrOptions With {.Version = 40}
' Create QR code
Private qr As QrCode = QrWriter.Write("1234", options)
' Save QR code as a bitmap
Private qrImage As AnyBitmap = qr.Save()
' Save QR code bitmap as file
qrImage.SaveAs("qrImage.png")
从输出结果中可以看出,与第 5 版相比,第 40 版的二维码非常复杂和密集。
低版本需要更精确的扫描,没有更高分辨率的扫描仪可能难以扫描。 不过,更高的版本更容易扫描,即使使用较低分辨率的相机也是如此。 有关根据容量选择 QR 版本的更详细指南,请参阅 QR 版本列表。
字符编码
该选项决定了 QR 代码的编码方式。 在我们的示例中,我们将其改为 "UTF-32",而默认字符编码为 "ISO-8859-1"。
using IronQr;using IronSoftware.Drawing;QrOptions options = new QrOptions{ // Change character encoding to UTF-32CharacterEncoding = "UTF-32"};// Create QR codeQrCode qr = QrWriter.Write("1234", options);// Save QR code as a bitmapAnyBitmap qrImage = qr.Save();// Save QR code bitmap as fileqrImage.SaveAs("qrImage.png");
using IronQr;
using IronSoftware.Drawing;
QrOptions options = new QrOptions
{
// Change character encoding to UTF-32
CharacterEncoding = "UTF-32"
};
// Create QR code
QrCode qr = QrWriter.Write("1234", options);
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save();
// Save QR code bitmap as file
qrImage.SaveAs("qrImage.png");
ImportsIronQrImportsIronSoftware.DrawingPrivate options As New QrOptionsWith {.CharacterEncoding = "UTF-32"}' Create QR codePrivate qr AsQrCode = QrWriter.Write("1234", options)' Save QR code as a bitmapPrivate qrImage AsAnyBitmap = qr.Save()' Save QR code bitmap as fileqrImage.SaveAs("qrImage.png")
Imports IronQr
Imports IronSoftware.Drawing
Private options As New QrOptions With {.CharacterEncoding = "UTF-32"}
' Create QR code
Private qr As QrCode = QrWriter.Write("1234", options)
' Save QR code as a bitmap
Private qrImage As AnyBitmap = qr.Save()
' Save QR code bitmap as file
qrImage.SaveAs("qrImage.png")
QR 代码样式
除了简单易用的方法和处理输入数据的灵活性,IronQR 还提供了许多自定义和风格化 QR 代码的选项,使其独一无二。 QrStyleOptions 类提供了用于自定义QR码各个方面的各种参数。 让我们来探讨一下可用的选项。
using IronQr;using IronSoftware.Drawing;QrStyleOptions styleOptions = new QrStyleOptions(){ // Change the dimensions to 600pxDimensions = 600,};string url = "https://ironsoftware.com/csharp/qr/";// Create QR codeQrCode qr = QrWriter.Write(url);// Save QR code as a bitmapAnyBitmap qrImage = qr.Save(styleOptions);// Save QR code bitmap as fileqrImage.SaveAs("qrURLResized.png");
using IronQr;
using IronSoftware.Drawing;
QrStyleOptions styleOptions = new QrStyleOptions()
{
// Change the dimensions to 600px
Dimensions = 600,
};
string url = "https://ironsoftware.com/csharp/qr/";
// Create QR code
QrCode qr = QrWriter.Write(url);
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save(styleOptions);
// Save QR code bitmap as file
qrImage.SaveAs("qrURLResized.png");
ImportsIronQrImportsIronSoftware.DrawingPrivate styleOptions As New QrStyleOptions() With {.Dimensions = 600}Private url AsString = "https://ironsoftware.com/csharp/qr/"' Create QR codePrivate qr AsQrCode = QrWriter.Write(url)' Save QR code as a bitmapPrivate qrImage AsAnyBitmap = qr.Save(styleOptions)' Save QR code bitmap as fileqrImage.SaveAs("qrURLResized.png")
Imports IronQr
Imports IronSoftware.Drawing
Private styleOptions As New QrStyleOptions() With {.Dimensions = 600}
Private url As String = "https://ironsoftware.com/csharp/qr/"
' Create QR code
Private qr As QrCode = QrWriter.Write(url)
' Save QR code as a bitmap
Private qrImage As AnyBitmap = qr.Save(styleOptions)
' Save QR code bitmap as file
qrImage.SaveAs("qrURLResized.png")
using IronQr;using IronSoftware.Drawing;QrStyleOptions styleOptions = new QrStyleOptions(){ // Change margins to 20pxMargins = 20};string url = "https://ironsoftware.com/csharp/qr/";// Create QR codeQrCode qr = QrWriter.Write(url);// Save QR code as a bitmapAnyBitmap qrImage = qr.Save(styleOptions);// Save QR code bitmap as fileqrImage.SaveAs("qrURLMarginMultiple.png");
using IronQr;
using IronSoftware.Drawing;
QrStyleOptions styleOptions = new QrStyleOptions()
{
// Change margins to 20px
Margins = 20
};
string url = "https://ironsoftware.com/csharp/qr/";
// Create QR code
QrCode qr = QrWriter.Write(url);
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save(styleOptions);
// Save QR code bitmap as file
qrImage.SaveAs("qrURLMarginMultiple.png");
ImportsIronQrImportsIronSoftware.DrawingPrivate styleOptions As New QrStyleOptions() With {.Margins = 20}Private url AsString = "https://ironsoftware.com/csharp/qr/"' Create QR codePrivate qr AsQrCode = QrWriter.Write(url)' Save QR code as a bitmapPrivate qrImage AsAnyBitmap = qr.Save(styleOptions)' Save QR code bitmap as fileqrImage.SaveAs("qrURLMarginMultiple.png")
Imports IronQr
Imports IronSoftware.Drawing
Private styleOptions As New QrStyleOptions() With {.Margins = 20}
Private url As String = "https://ironsoftware.com/csharp/qr/"
' Create QR code
Private qr As QrCode = QrWriter.Write(url)
' Save QR code as a bitmap
Private qrImage As AnyBitmap = qr.Save(styleOptions)
' Save QR code bitmap as file
qrImage.SaveAs("qrURLMarginMultiple.png")
更改每页边距
IronQR 还允许用户为每一面指定不同的页边距,提供更精细的控制。
using IronQr;using IronSoftware.Drawing;QrStyleOptions styleOptions = new QrStyleOptions(){ // Change marginsMarginBottom = 30,MarginTop = 100,MarginRight = 40,MarginLeft = 20,};string url = "https://ironsoftware.com/csharp/qr/";// Create QR codeQrCode qr = QrWriter.Write(url);// Save QR code as a bitmapAnyBitmap qrImage = qr.Save(styleOptions);// Save QR code bitmap as fileqrImage.SaveAs("qrURLMarginMultiple.png");
using IronQr;
using IronSoftware.Drawing;
QrStyleOptions styleOptions = new QrStyleOptions()
{
// Change margins
MarginBottom = 30,
MarginTop = 100,
MarginRight = 40,
MarginLeft = 20,
};
string url = "https://ironsoftware.com/csharp/qr/";
// Create QR code
QrCode qr = QrWriter.Write(url);
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save(styleOptions);
// Save QR code bitmap as file
qrImage.SaveAs("qrURLMarginMultiple.png");
ImportsIronQrImportsIronSoftware.DrawingPrivate styleOptions As New QrStyleOptions() With { .MarginBottom = 30, .MarginTop = 100, .MarginRight = 40, .MarginLeft = 20}Private url AsString = "https://ironsoftware.com/csharp/qr/"' Create QR codePrivate qr AsQrCode = QrWriter.Write(url)' Save QR code as a bitmapPrivate qrImage AsAnyBitmap = qr.Save(styleOptions)' Save QR code bitmap as fileqrImage.SaveAs("qrURLMarginMultiple.png")
Imports IronQr
Imports IronSoftware.Drawing
Private styleOptions As New QrStyleOptions() With {
.MarginBottom = 30,
.MarginTop = 100,
.MarginRight = 40,
.MarginLeft = 20
}
Private url As String = "https://ironsoftware.com/csharp/qr/"
' Create QR code
Private qr As QrCode = QrWriter.Write(url)
' Save QR code as a bitmap
Private qrImage As AnyBitmap = qr.Save(styleOptions)
' Save QR code bitmap as file
qrImage.SaveAs("qrURLMarginMultiple.png")
颜色
我们可以使用 QrStyleOptions 类为QR码及其背景添加颜色。 自定义颜色可以使 QR 代码更加独特和醒目。 您可以使用 Color 和 BackgroundColor 属性更改颜色。 请确保导入 IronSoftware.Drawing 以获取可分配色的列表。
using IronQr;using IronSoftware.Drawing;// Load new logo imageAnyBitmap logo = AnyBitmap.FromFile("sample.png");// Add new logo to QR code style optionsQrStyleOptions styleOptions = new QrStyleOptions(){Logo = new QrLogo(logo, 50, 50, 10),};string url = "https://ironsoftware.com/csharp/qr/";// Create QR codeQrCode qr = QrWriter.Write(url);// Save QR code as a bitmapAnyBitmap qrImage = qr.Save(styleOptions);// Save QR code bitmap as fileqrImage.SaveAs("qrURLColored.png");
using IronQr;
using IronSoftware.Drawing;
// Load new logo image
AnyBitmap logo = AnyBitmap.FromFile("sample.png");
// Add new logo to QR code style options
QrStyleOptions styleOptions = new QrStyleOptions()
{
Logo = new QrLogo(logo, 50, 50, 10),
};
string url = "https://ironsoftware.com/csharp/qr/";
// Create QR code
QrCode qr = QrWriter.Write(url);
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save(styleOptions);
// Save QR code bitmap as file
qrImage.SaveAs("qrURLColored.png");
ImportsIronQrImportsIronSoftware.Drawing' Load new logo imageDim logo AsAnyBitmap = AnyBitmap.FromFile("sample.png")' Add new logo to QR code style optionsDim styleOptions As New QrStyleOptions() With { .Logo = New QrLogo(logo, 50, 50, 10)}Dim url AsString = "https://ironsoftware.com/csharp/qr/"' Create QR codeDim qr AsQrCode = QrWriter.Write(url)' Save QR code as a bitmapDim qrImage AsAnyBitmap = qr.Save(styleOptions)' Save QR code bitmap as fileqrImage.SaveAs("qrURLColored.png")
Imports IronQr
Imports IronSoftware.Drawing
' Load new logo image
Dim logo As AnyBitmap = AnyBitmap.FromFile("sample.png")
' Add new logo to QR code style options
Dim styleOptions As New QrStyleOptions() With {
.Logo = New QrLogo(logo, 50, 50, 10)
}
Dim url As String = "https://ironsoftware.com/csharp/qr/"
' Create QR code
Dim qr As QrCode = QrWriter.Write(url)
' Save QR code as a bitmap
Dim qrImage As AnyBitmap = qr.Save(styleOptions)
' Save QR code bitmap as file
qrImage.SaveAs("qrURLColored.png")
添加徽标
除了颜色和尺寸,您还可以将公司徽标应用到 QR 代码中。 这有助于用户立即识别二维码并将其与您的品牌联系起来。 Logo 属性使您可以轻松地通过添加您的企业Logo来自定义QR码。
using IronQr;using IronSoftware.Drawing;// Load new logo imageAnyBitmap logo = AnyBitmap.FromFile("sample.png");// Add new logo to QR code style optionsQrStyleOptions styleOptions = new QrStyleOptions(){Logo = new QrLogo(logo, 50, 50, 10),};string url = "https://ironsoftware.com/csharp/qr/";// Create QR codeQrCode qr = QrWriter.Write(url);// Save QR code as a bitmapAnyBitmap qrImage = qr.Save(styleOptions);// Save QR code bitmap as fileqrImage.SaveAs("qrURLColored.png");
using IronQr;
using IronSoftware.Drawing;
// Load new logo image
AnyBitmap logo = AnyBitmap.FromFile("sample.png");
// Add new logo to QR code style options
QrStyleOptions styleOptions = new QrStyleOptions()
{
Logo = new QrLogo(logo, 50, 50, 10),
};
string url = "https://ironsoftware.com/csharp/qr/";
// Create QR code
QrCode qr = QrWriter.Write(url);
// Save QR code as a bitmap
AnyBitmap qrImage = qr.Save(styleOptions);
// Save QR code bitmap as file
qrImage.SaveAs("qrURLColored.png");
ImportsIronQrImportsIronSoftware.Drawing' Load new logo imageDim logo AsAnyBitmap = AnyBitmap.FromFile("sample.png")' Add new logo to QR code style optionsDim styleOptions As New QrStyleOptions() With { .Logo = New QrLogo(logo, 50, 50, 10)}Dim url AsString = "https://ironsoftware.com/csharp/qr/"' Create QR codeDim qr AsQrCode = QrWriter.Write(url)' Save QR code as a bitmapDim qrImage AsAnyBitmap = qr.Save(styleOptions)' Save QR code bitmap as fileqrImage.SaveAs("qrURLColored.png")
Imports IronQr
Imports IronSoftware.Drawing
' Load new logo image
Dim logo As AnyBitmap = AnyBitmap.FromFile("sample.png")
' Add new logo to QR code style options
Dim styleOptions As New QrStyleOptions() With {
.Logo = New QrLogo(logo, 50, 50, 10)
}
Dim url As String = "https://ironsoftware.com/csharp/qr/"
' Create QR code
Dim qr As QrCode = QrWriter.Write(url)
' Save QR code as a bitmap
Dim qrImage As AnyBitmap = qr.Save(styleOptions)
' Save QR code bitmap as file
qrImage.SaveAs("qrURLColored.png")
IronQrPdfPasswordException:IronQrException 的子类,当用户试图添加水印的PDF受密码保护且未提供密码或提供错误密码时发生此错误。 它还涵盖了其他与 PDF 相关的错误,例如当 PDF 无法打开时,如示例所示。
结论
IronQR 为在 .NET 应用程序中生成和定制 QR 代码提供了一套全面的方法。 凭借其强大的功能,开发人员可以轻松创建具有各种数据编码、视觉样式和纠错级别的 QR 代码。 该库支持多种输出格式,并可无缝集成到现有文档中,是任何二维码项目的通用工具。 无论您需要的是基本的 QR 码还是高级的品牌解决方案,IronQR 都能提供灵活性和功能性,高效满足您的需求。