跳至页脚内容
使用 IRONQR

QR Code Generator .NET Core:在 C# 中创建和读取快速响应代码

在 .NET Core 中创建 QR 代码生成器从未如此简单。 在评估 QR 代码生成器的要求时,开发人员会在易用性和可选高级功能之间寻求平衡。 无论是构建 ASP.NET Core 网络应用程序还是控制台工具,开发人员都需要一个可靠的库,来处理从基本的二维码创建到高级定制的所有工作。

IronQR 为 .NET Core 提供了强大的解决方案,支持对文本字符串、URL 和日文 Unicode 文本进行编码。 有些人最初可能会寻找诸如 QRCoder 库(以其宽容的 MIT 许可而闻名)之类的 .NET 开源库,而 IronQR 则提供了一种具有机器学习功能和专门支持的企业级替代方案。

本教程演示了如何在您的 .NET Core 项目中生成 QR 代码、配置纠错级别以及使用机器学习驱动的检测功能读取现有代码。

立即开始使用 IronQR 免费试用版

立即开始使用 IronQR。
green arrow pointer

如何在 .NET Core 中安装二维码库? 首先,打开 Visual Studio 并单击 "创建 "按钮启动一个新项目。 指定项目名称后,通过 NuGet 包管理器安装库只需几秒钟。 有些开发人员可能会搜索 QRCoder NuGet 软件包,而您可以通过在软件包管理器控制台中运行以下命令来安装 IronQR 框架: ```shell :ProductInstall ``` 或者使用 NuGet 软件包管理器用户界面,搜索 "IronQR "并点击安装按钮。 该库提供了与 .NET Core 3.x、.NET 5、6、7、8、9 和 10 兼容的 .NET 实现,是现代网络开发和多平台项目的理想选择。

如何生成 QR 代码? [QrWriter 类](/csharp/qr/object-reference/api/IronQr.QrWriter.html)通常与方便的扩展方法一起使用,使生成 QR 代码变得异常简单。 以下是一个完整示例的源代码,该示例使用传统的命名空间和类结构,只需几行代码即可生成 QR 代码: ```cs using IronQr; using IronSoftware.Drawing; namespace Examples { public class QRCodeGenerator { public static void Main(string[] args) { // Generate a QR code from input text var qrcode = QrWriter.Write("https://ironsoftware.com"); // Save as PNG image AnyBitmap qrImage = qrcode.Save(); qrImage.SaveAs("website-qr.png"); } } } ``` ### 输出 !a href="/static-assets/qr/blog/qr-code-net-core/qr-code-net-core-1.webp">QR 代码生成器 .NET Core:在 C# 中创建和读取快速响应代码:图片 1 - 从 URL 创建的 QR `QrWriter.Write()` 方法将数据处理为 `QrCodeData` ,其中包含 QR 符号的原始模块(黑白方块)。 IronQR 使用内部有效载荷生成器来确保输入文本被有效地编码为数字数据、字母数字文本字符串或字节数组。

什么是纠错级别,它们为什么重要? 纠错功能决定了 QR 符号在可扫描的同时能承受多大的损坏。 这是可选的高级功能之一,可实现品牌化和持久性。 |级别|数据恢复|最适合| | --- | --- | --- | |L(低)|~7%|简洁的数字显示| |M(中)|~15%|一般用途| |Q(四分法)|~25%|印刷材料| |H(高)|~30%|恶劣环境、徽标覆盖| 使用 [QrOptions](/csharp/qr/object-reference/api/IronQr.QrOptions.html) 配置纠错: ```cs using IronQr; // Configure with high error correction level var options = new QrOptions(QrErrorCorrectionLevel.High, 20); // Generate QR code with options var qrcode = QrWriter.Write("Product-12345", options); AnyBitmap qrImage = qrcode.Save(); qrImage.SaveAs("product-qr.png"); ``` ### QR 输出 !a href="/static-assets/qr/blog/qr-code-net-core/qr-code-net-core-2.webp">QR 代码生成器 .NET Core:在 C# 中创建和读取快速响应代码:图片 2 - 生成具有纠错功能的 QR 码。 第二个参数指定允许的最大版本号,控制二维码的大小和数据容量。 在添加徽标图像或实物佩戴的情况下,更高的纠错能力至关重要。

如何使用徽标和颜色自定义 QR 代码外观? IronQR 的 `QrStyleOptions` 可通过自定义颜色、尺寸和嵌入式徽标生成品牌对齐的 QR 代码: ```cs using IronQr; using IronSoftware.Drawing; var styleOptions = new QrStyleOptions { Dimensions = 300, Margins = 10, Color = Color.DarkBlue, Logo = new QrLogo { Bitmap = AnyBitmap.FromFile("company-logo.png") } }; var qrcode = QrWriter.Write("https://yourcompany.com"); AnyBitmap qrImage = qrcode.Save(styleOptions); qrImage.SaveAs("branded-qr.png"); ``` ### 样式 QR 代码 !a href="/static-assets/qr/blog/qr-code-net-core/qr-code-net-core-3.webp">QR 代码生成器 .NET Core:在 C# 中创建和读取快速响应代码:图片 3 - 风格化 QR 代码输出。

如何在 ASP.NET Core 中生成二维码? 将二维码生成集成到 ASP.NET Core 中遵循模型视图控制器模式。 下面是一个 `HomeController` 类的实现: ```cs using IronQr; using IronSoftware.Drawing; using Microsoft.AspNetCore.Mvc; namespace Examples { public class HomeController : Controller { public IActionResult GenerateQR(string content) { QrCode myQr = QrWriter.Write(content); AnyBitmap qrImage = myQr.Save(); byte[] imageBytes = qrImage.ExportBytes(); return File(imageBytes, "image/png"); } } } ``` 该端点接受 QR 代码数据作为参数,并直接返回生成的 PNG 图像。 该方法可与 ASP.NET Core Web API 项目和 Razor 视图无缝配合。

如何对日语 Unicode 文本进行编码? IronQR 支持通过汉字模式对日文 Unicode 文本进行编码,与标准编码相比,汉字模式使用更少的数据段对日文 Unicode 文本进行高效编码: ```cs using IronQr; using IronSoftware.Drawing; // Generate QR that encodes Japanese Unicode text QrCode japaneseQr = QrWriter.Write("こんにちは世界"); AnyBitmap qrImage = japaneseQr.Save(); qrImage.SaveAs("japanese-qr.png"); ``` ### 输出 !a href="/static-assets/qr/blog/qr-code-net-core/qr-code-net-core-4.webp">QR 代码生成器 .NET Core:在 C# 中创建和读取快速反应代码:图片 4 - 使用日文 Unicode 文本编码的 QR 代码。 该库在检测到日文字符时会自动选择汉字模式,从而优化二维码的数据容量,无需手动操作或手动配置数据段。

如何使用机器学习读取 QR 码? IronQR 通过其[机器学习驱动的 QR 阅读器](/examples/read-qr-code/)脱颖而出。 即使从角度或部分模糊的图像中读取二维码,ML 模型的准确率也能达到 99.99%: ```cs using IronQr; using IronSoftware.Drawing; // Load image containing QR code var inputBmp = AnyBitmap.FromFile("scanned-document.png"); QrImageInput imageInput = new QrImageInput(inputBmp); // Read with ML-powered detection QrReader reader = new QrReader(); IEnumerableresults = reader.Read(imageInput); foreach (var result in results) { Console.WriteLine($"Found: {result.Value}"); } ``` ### QR 代码读取输出 !a href="/static-assets/qr/blog/qr-code-net-core/qr-code-net-core-5.webp">QR 代码生成器 .NET Core:在 C# 中创建和读取快速响应代码:图片 5 - 从 QR 码读取数据。 这种能力使 IronQR 成为文档处理和库存管理的理想选择。

跨平台支持如何工作? 与依赖`System.Drawing.Common`(在.NET 6+中跨平台使用已废弃)的解决方案不同,IronQR 使用`IronSoftware.Drawing`来实现真正的多平台项目。 您的代码可以在 Windows、macOS、Linux、iOS 和 Android 系统中一致运行。 对于多平台项目,没有必要使用 SkiaSharp 替代品--IronQR 在内部处理平台抽象。 ## 结论 IronQR 为 .NET Core 中所有需求的 QR 代码生成器提供了完整的解决方案。 通过自动处理复杂的有效载荷生成器以及原始模块和 `QrCodeData` 数据的组装,它简化了开发周期。 无论您是需要一个简单的 .NET 开源库替代品,还是需要一个具有可选高级功能的强大系统,IronQR 的跨平台架构都能确保可靠运行。 准备好在您的项目中使用 QR 代码了吗? [开始免费试用](trial-license)或[探索许可选项](licensing),释放 IronQR 的全部潜能。 请访问 API 文档以获取更多 [代码示例](/examples/)。

常见问题解答

如何使用 IronQR 在 .NET Core 中生成二维码?

您可以利用 IronQR 在 .NET Core 中生成 QR 代码,它提供了一个易于使用的库,可以创建基本的 QR 代码以及高级定制功能。

IronQR 在 QR 代码生成方面有哪些定制选项?

IronQR 提供各种定制选项,包括配置纠错级别和为 QR 代码添加徽标,确保它们满足您的特定要求。

IronQR for .NET 能否处理 ASP.NET Core 网络应用程序中的二维码生成?

是的,IronQR 与 ASP.NET Core 网络应用程序完全兼容,允许开发人员将 QR 代码生成无缝集成到他们的项目中。

是否可以用 IronQR for .NET Core 读取二维码?

当然,IronQR 可高精度读取 QR 码,利用机器学习技术确保精确检测和提取数据。

IronQR 为何适合正在寻找二维码生成器的开发人员?

IronQR 兼顾了易用性和高级功能,是需要多功能、可靠 QR 代码库的开发人员的理想选择。

IronQR 中是否有二维码处理的高级功能?

是的,IronQR 包括配置纠错、添加品牌元素和处理各种 QR 代码格式等高级功能。

IronQR 如何确保二维码读取的准确性?

IronQR 利用机器学习驱动的算法来提高 QR 码读取的准确性,确保即使在具有挑战性的条件下也能可靠地捕获数据。

Jordi Bardia
软件工程师
Jordi 最擅长 Python、C# 和 C++,当他不在 Iron Software 利用这些技能时,他就在游戏编程。分享产品测试、产品开发和研究的责任,Jordi 在持续的产品改进中增加了巨大的价值。多样的经验使他面临挑战并保持投入,他表示这是在 Iron Software 工作的最喜欢的方面之一。Jordi 在佛罗里达州迈阿密长大,并在佛罗里达大学学习计算机科学和统计学。