Comment Lire un Code QR avec Différents Modes de Lecture en C
La lecture des codes QR est devenue une tâche routinière en 2025, car de plus en plus de produits sont numérisés et accessibles en ligne en permanence. Le stockage des données nécessaires dans des empreintes compactes en lecture seule est désormais la norme, et les développeurs ont besoin de moyens efficaces pour extraire ces informations dans différents environnements.
IronQR propose 3 options pour lire un code QR, chacune conçue pour des cas d'utilisation spécifiques.
Dans ce guide pratique, les trois méthodes seront expliquées à l'aide d'exemples clairs. Si vous ne l'avez pas encore consulté, jetez un coup d'œil au guide précédent sur la lecture de codes QR à partir d'images ou sur l'écriture de votre propre code QR.
Comment lire les codes QR avec différents modes de lecture
- Téléchargez la bibliothèque C# pour lire les codes QR avec des options de numérisation avancées
- Charger le fichier image cible
- Initialiser un `QrImageInput` en transmettant l'image et le `QrScanMode` requis
- Instanciez la classe `QrReader` et passez l'objet d'entrée à la méthode `Read`
- Récupérez les résultats pour accéder au texte décodé `Value` ou parcourez le tableau `Points` pour les données de coordonnées.
Compréhension des modes de lecture des codes QR
IronQR propose trois modes de numérisation puissants via l'énumération QrScanMode :
- Mode automatique (
QrScanMode.Auto) : combine la détection par apprentissage automatique et les algorithmes de balayage de base pour une précision et une fiabilité maximales - Mode de numérisation basique uniquement (
QrScanMode.OnlyBasicScan) : utilise des techniques de traitement d'image classiques pour une numérisation rapide et fiable lorsque les codes QR sont clairement visibles. - Mode de détection (
QrScanMode.OnlyDetectionModel) : Exploite l'apprentissage automatique pour détecter les positions des codes QR, idéal pour extraire des données de coordonnées
Examinons chaque méthode de numérisation en détail.
Mode de balayage de base uniquement
Seul le mode de numérisation de base utilise des algorithmes de traitement d'image traditionnels sans recourir à l'apprentissage automatique. Cette méthode est rapide et efficace lorsque les codes QR sont clairement visibles et bien positionnés ; cependant, il fonctionne toujours sur les QR endommagés si les trois carrés d'angle sont lisibles.
:path=/static-assets/qr/content-code-examples/how-to/read-qr-codes-with-scan-modes-basic.cs
using IronQr;
using IronQr.Enum;
using IronSoftware.Drawing;
using System.IO;
using System.Linq;
// Load the image
var bmp = AnyBitmap.FromFile("damaged-qr.png");
// Create scan input using Only Basic Scan mode
var input = new QrImageInput(bmp, QrScanMode.OnlyBasicScan);
// Get the result
var result = new QrReader().Read(input).FirstOrDefault();
// Save the output to a text file
File.WriteAllText("basic-scan-output.txt", result.Value);
Imports IronQr
Imports IronQr.Enum
Imports IronSoftware.Drawing
Imports System.IO
Imports System.Linq
' Load the image
Dim bmp = AnyBitmap.FromFile("damaged-qr.png")
' Create scan input using Only Basic Scan mode
Dim input = New QrImageInput(bmp, QrScanMode.OnlyBasicScan)
' Get the result
Dim result = (New QrReader()).Read(input).FirstOrDefault()
' Save the output to a text file
File.WriteAllText("basic-scan-output.txt", result.Value)
Saisie de numérisation
Fichier texte enregistré
Mode de balayage automatique
Le mode de balayage automatique est le mode par défaut (pour QrScanMode) et l'option la plus polyvalente disponible. Il combine automatiquement la détection par apprentissage automatique avec les algorithmes de balayage traditionnels afin d'obtenir les meilleurs résultats possibles dans toute une série de conditions d'image.
L'exemple montre une image en cours de chargement et d'activation du mode Auto. Il scanne ensuite l'image et rassemble tous les codes QR détectés dans une liste. Enfin, il parcourt la liste results et affiche le texte de chaque valeur dans la console (ici, l'URL uniquement).
:path=/static-assets/qr/content-code-examples/how-to/read-qr-codes-with-scan-modes-auto.cs
using System;
using IronQr;
using IronQr.Enum;
using IronSoftware.Drawing;
// Load the image file
var bmp = AnyBitmap.FromFile("cup.png");
// Create scan input using Auto Scan mode
var input = new QrImageInput(bmp, QrScanMode.Auto);
// Scan and read all QR codes
var results = new QrReader().Read(input);
// Initialize a counter to track the number of QR codes
int count = 1;
// Loop through each discovered QR code
foreach (var result in results)
{
Console.WriteLine($"QR {count}: {result.Value}");
count++;
}
Imports System
Imports IronQr
Imports IronQr.Enum
Imports IronSoftware.Drawing
' Load the image file
Dim bmp = AnyBitmap.FromFile("cup.png")
' Create scan input using Auto Scan mode
Dim input = New QrImageInput(bmp, QrScanMode.Auto)
' Scan and read all QR codes
Dim results = New QrReader().Read(input)
' Initialize a counter to track the number of QR codes
Dim count As Integer = 1
' Loop through each discovered QR code
For Each result In results
Console.WriteLine($"QR {count}: {result.Value}")
count += 1
Next
Saisie de numérisation
Affichage de la console
L'URL du site web du café est enregistrée après numérisation de la photo via IronQR.
Mode du modèle de détection
Le mode Modèle de détection utilise l'apprentissage automatique pour détecter les positions des codes QR dans les images. Cette qualité en fait un outil précieux pour les applications d'analyse spatiale et de vision par ordinateur. Le système de coordonnées qu'il utilise a son origine à (0, 0).
En général, les scanners QR utilisent des algorithmes de décodage standard qui s'appuient sur trois modèles de recherche, ce modèle capture les quatre sommets de l'identifiant. L'objet result contient une collection Points que vous parcourez pour récupérer les données de position.
Le code reprend la photo de la tasse de l'exemple précédent pour démontrer la détection des valeurs de position dans l'image.
:path=/static-assets/qr/content-code-examples/how-to/read-qr-codes-with-scan-modes-detection-model.cs
using System;
using IronQr;
using IronQr.Enum;
using IronSoftware.Drawing;
using System.Linq;
// Load the image
var bmp = AnyBitmap.FromFile("cup.png");
// Create scan input using Detection Model mode
var input = new QrImageInput(bmp, QrScanMode.OnlyDetectionModel);
// Read QR code
var result = new QrReader().Read(input).FirstOrDefault();
// Print position data
if (result != null)
{
if (result.Points != null)
{
foreach (var point in result.Points)
{
Console.WriteLine($"Point: X={point.X}, Y={point.Y}");
}
}
}
Imports System
Imports IronQr
Imports IronQr.Enum
Imports IronSoftware.Drawing
Imports System.Linq
' Load the image
Dim bmp = AnyBitmap.FromFile("cup.png")
' Create scan input using Detection Model mode
Dim input = New QrImageInput(bmp, QrScanMode.OnlyDetectionModel)
' Read QR code
Dim result = (New QrReader()).Read(input).FirstOrDefault()
' Print position data
If result IsNot Nothing Then
If result.Points IsNot Nothing Then
For Each point In result.Points
Console.WriteLine($"Point: X={point.X}, Y={point.Y}")
Next
End If
End If
Image de coupe étiquetée
Console étiquetée
Comparaison des méthodes d'analyse
| Fonctionnalité (`QRScanMode`) | Analyse de base ( `OnlyBasicScan` ) | Analyse automatique ( `Auto` ) | Modèle de détection (`OnlyDetectionModel`) |
|---|---|---|---|
| **Sortie** | Texte décodé (valeur) | Texte décodé (valeur) | Coordonnées (Points) |
| **Algorithme** | Traditionnel uniquement | Hybride (ML + traditionnel) | Apprentissage automatique uniquement |
| **Se concentrer** | Vitesse | Lisibilité / Récupération | Localisation / Vision par ordinateur |
Conclusion
Les trois modes de numérisation d'IronQR offrent une grande souplesse pour tous les scénarios de lecture de codes QR :
- Auto Scan : Précision et fiabilité maximales pour une utilisation générale
- Basic Scan : rapidité et efficacité pour des images de haute qualité
- Modèle de détection : Prise de conscience de la position pour les applications spatiales
En comprenant les points forts de chaque méthode, vous pouvez optimiser la mise en œuvre de la lecture des codes QR en fonction de vos besoins spécifiques. Que vous ayez besoin d'une extraction de données complète, d'un traitement rapide comme l'éclair ou d'une détection de position précise, IronQR vous couvre.
Pour obtenir d'autres exemples et des informations détaillées sur les API, consultez la documentation IronQR ou explorez les exemples de code sur GitHub.
Questions Fréquemment Posées
Quels sont les différents modes de lecture des codes QR ?
IronQR propose différents modes de numérisation tels que la numérisation automatique, manuelle et par lots pour lire efficacement les codes QR dans différents scénarios.
Comment puis-je mettre en œuvre la numérisation de codes QR dans un projet C# ?
Vous pouvez mettre en œuvre la lecture de codes QR dans un projet C# en intégrant la bibliothèque IronQR, qui fournit des méthodes faciles à utiliser pour lire les codes QR avec différents modes de lecture.
Quels sont les avantages de l'utilisation d'IronQR pour la numérisation de codes QR ?
IronQR offre une grande précision, un traitement rapide et prend en charge différents modes de numérisation, ce qui en fait un choix polyvalent pour la numérisation de codes QR dans les projets C#.
Est-il possible de lire plusieurs codes QR à la fois en utilisant IronQR ?
Oui, IronQR prend en charge le mode de numérisation par lots, ce qui vous permet de lire plusieurs codes QR simultanément pour une efficacité accrue.
IronQR prend-il en charge la numérisation de codes QR provenant de diverses sources ?
IronQR peut scanner des codes QR provenant de diverses sources, notamment des images, des PDF et des flux de caméras en direct, ce qui offre une grande flexibilité aux développeurs.
IronQR peut-il gérer des codes QR avec différentes orientations ?
Oui, IronQR est conçu pour lire avec précision les codes QR quelle que soit leur orientation, ce qui garantit des résultats de numérisation fiables.
Comment fonctionne le mode d'analyse automatique dans IronQR ?
Le mode de numérisation automatique d'IronQR détecte et lit intelligemment les codes QR sans nécessiter de saisie manuelle, ce qui rationalise le processus de numérisation.
Quelles sont les compétences en programmation requises pour utiliser IronQR pour la numérisation de codes QR ?
Des connaissances de base en programmation C# sont suffisantes pour utiliser IronQR pour la numérisation de codes QR, car la bibliothèque offre une intégration et une utilisation simples.
Existe-t-il une version d'essai d'IronQR disponible à des fins de test ?
Oui, IronQR propose une version d'essai qui permet aux développeurs de tester ses fonctionnalités et ses modes de numérisation avant de s'engager dans un achat.
Où puis-je télécharger la bibliothèque IronQR ?
La bibliothèque IronQR peut être téléchargée sur le site web d'Iron Software, où vous trouverez également de la documentation et des ressources d'assistance.

