如何从图像中读取 QR 码

查克尼特·宾
查克尼特·宾
2024年十月13日
更新 2024年十月13日
分享:
This article was translated from English: Does it need improvement?
Translated
View the article in English

阅读二维码是指扫描和解码二维码中存储的信息的过程。 这通常需要使用相机或扫描仪,再配上能解释 QR 码数据的软件来完成。 二维码中的信息可以是文本、URL、联系方式或其他形式的数据。

立即在您的项目中开始使用IronQR,并享受免费试用。

第一步:
green arrow pointer

从图像中读取 QR 码

IronQR 的突出功能之一是其内置的从各种图像格式中无缝读取二维码的能力。 这包括:

* 联合图像专家组 (JPEG)

* 便携式网络图形 (PNG)

* 图形交换格式 (GIF)

* 标记图像文件格式 (TIFF)

* 位图图像文件 (BMP)

* WBMP

* WebP

* 图标 (ico)

* WMF

* 原始格式(raw)

此功能由开源库IronDrawing启用。 现在,让我们从下图中探索 IronQR 如何用于读取二维码。

二维码
:path=/static-assets/qr/content-code-examples/how-to/read-qr-code-image.cs
using IronQr;
using IronSoftware.Drawing;
using System.Collections.Generic;
using System;

// Open the asset to read a QR Code from
var inputBmp = AnyBitmap.FromFile("IMAGE_TO_READ.png");

// Load the asset into QrImageInput
QrImageInput imageInput = new QrImageInput(inputBmp);

// Create a QR Reader object
QrReader reader = new QrReader();

// Read the Input an get all embedded QR Codes
IEnumerable<QrResult> results = reader.Read(imageInput);

foreach (var result in results)
{
    Console.WriteLine(result.Value);
}
Imports IronQr
Imports IronSoftware.Drawing
Imports System.Collections.Generic
Imports System

' Open the asset to read a QR Code from
Private inputBmp = AnyBitmap.FromFile("IMAGE_TO_READ.png")

' Load the asset into QrImageInput
Private imageInput As New QrImageInput(inputBmp)

' Create a QR Reader object
Private reader As New QrReader()

' Read the Input an get all embedded QR Codes
Private results As IEnumerable(Of QrResult) = reader.Read(imageInput)

For Each result In results
	Console.WriteLine(result.Value)
Next result
$vbLabelText   $csharpLabel

对示例图片中的二维码值感到好奇?使用代码片段试试吧!


支持的 QR 代码类型

支持多种类型的 QR 代码的创建和读取。 以下是支持的 QR 代码类型:

  • QRCode:这是当今最常用的标准二维码。 它可以存储大量数据(最高可达 7,089 个数字字符或 4,296 个字母数字字符),使其适用于各种应用,从网站 URL 到联系方式。

    二维码
  • MicroQRCode:Micro QR Code是标准QR码的小尺寸版本,设计用于空间有限的情况。 它存储的数据比标准二维码少(最多35个数字字符或21个字母数字字符),但其紧凑的尺寸使其非常适合在标准二维码过于庞大的场合使用,例如在小包装或微小的印刷标签上。

    二维码
  • RMQRCode:RMQR Code(矩形微型 QR 码)是另一种紧凑版的 QR 码,但其形状为矩形而非正方形。 该版本允许灵活调整长宽比,这对于有矩形空间的应用非常有用。 它可以存储与微型 QR 码类似的数据,但专为可用空间为非方形的特定用例而设计。
    "二维码"class="img-responsive add-shadow"
查克尼特·宾
软件工程师
Chaknith 负责 IronXL 和 IronBarcode 的工作。他在 C# 和 .NET 方面拥有深厚的专业知识,帮助改进软件并支持客户。他从用户互动中获得的洞察力,有助于提升产品、文档和整体体验。