Zum Fußzeileninhalt springen
IRONQR NUTZEN

Wie man QR aus Bild in C# liest

QR-Codes (Quick Response Codes) sind überall—auf Produktverpackungen, Veranstaltungstickets, Speisekarten und sogar Visitenkarten. Als .NET-Entwickler kann die Fähigkeit, QR-Codes von Bildern schnell und zuverlässig zu lesen, die Tür zu leistungsstarker Automatisierung und Benutzerinteraktionsfunktionen öffnen. In diesem Leitfaden zeigen wir Ihnen, wie Sie IronQR, eine leistungsstarke QR-Code-Bibliothek, die speziell für .NET entwickelt wurde, verwenden, um QR-Codes mit nur wenigen Zeilen C#-Code von Bildern zu lesen.

Egal ob Sie Software zur Bestandsverwaltung entwickeln, die Zwei-Faktor-Authentifizierung integrieren oder einfach nur URLs aus Screenshots dekodieren, IronQR macht es einfach.

Was ist IronQR?

IronQR ist eine leistungsstarke C# QR-Code-Bibliothek, die entwickelt wurde, um einen leistungsstarken QR-Code-Leser und -Schreiber für .NET-Entwickler zu erstellen. IronQR ist sowohl für die QR-Code-Erstellung als auch für das Scannen ausgelegt und unterstützt das Lesen aus einer Vielzahl von Bildformaten, was es ideal für den Einsatz in Desktop-, Web- oder Serveranwendungen macht. Durch diese Bibliothek können Sie genaue QR-Code-Lesewerkzeuge erstellen, um den gesamten Prozess der QR-Code-Erkennung und -Lesung zu automatisieren.

Wichtige Merkmale

  • QR-Codes einfach lesen und generieren.
  • Unterstützung für JPEG, PNG, BMP und andere Bildformate.
  • Hohe Geschwindigkeit und genaue Erkennung für eine einfache Extraktion der QR-Code-Daten.
  • Funktioniert in .NET Framework, .NET Core, .NET Standard (2.0+) und .NET 6/7+ Projekten.
  • Bietet plattformübergreifende Unterstützung, sodass Sie in Ihrer bevorzugten App-Umgebung und Ihrem Betriebssystem arbeiten können, sei es Windows, Linux oder eine andere unterstützte Umgebung.

Unlike open-source alternatives, IronQR focuses on enterprise-grade stability, commercial licensing, and professional support—making it an excellent fit for business-critical applications.

Einrichtung von IronQR in Ihrem C#-Projekt

Bevor Sie mit dem Scannen von QR-Codes beginnen können, gehen wir durch, wie Sie IronQR in Ihrer .NET-Anwendung einrichten.

Installation über NuGet

Sie können IronQR direkt vom NuGet-Paketmanager-Konsol installieren:

Install-Package IronQR
Install-Package IronQR
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronQR
$vbLabelText   $csharpLabel

Alternativ nutzen Sie die NuGet-GUI in Visual Studio, indem Sie nach IronQR suchen und auf "Installieren" klicken:

Wie man QR aus Bild in C# liest: Abbildung 2 - IronQR NuGet Paketmanager Bildschirm

Namenräume hinzufügen und Grundeinrichtung

Sobald installiert, fügen Sie den folgenden Namespace in Ihre C#-Datei ein:

using IronSoftware.Drawing;
using IronQR;
using IronSoftware.Drawing;
using IronQR;
Imports IronSoftware.Drawing
Imports IronQR
$vbLabelText   $csharpLabel

Hinweis: IronSoftware.Drawing wird für die Handhabung von Bildformaten auf plattformübergreifende Weise verwendet.

QR-Code von einem Bild lesen

Tauchen wir ein, wie man tatsächlich einen QR-Code aus einer Datei mit IronQR liest.

Unterstützte Bildformate

IronQR unterstützt mehrere Bildformate, einschließlich:

  • PNG
  • JPG/JPEG
  • BMP
  • GIF
  • TIFF

Diese Flexibilität ermöglicht es Ihnen, so gut wie jede Bildquelle zu verwenden, von Kameraschnappschüssen bis zu gescannten Dokumenten.

Einfaches Code-Beispiel

Werfen wir einen genaueren Blick darauf, wie Sie diese Bibliothek verwenden können, um QR-Codes mit Leichtigkeit zu dekodieren. Hier ist ein minimales Beispiel, das einen einzelnen QR-Code mit dem Textwert "Hello World!" aus einer Bilddatei liest, wobei die Bitmap-Klasse und ein Datei-Stream zum Laden des Bildes verwendet werden:

using IronQr;
using IronSoftware.Drawing;
using System;
class Program
{
    static void Main()
    {
        // Load the image using a file stream
        using var stream = File.OpenRead("sample-qr.png");
        var bitmapImage = AnyBitmap.FromStream(stream);
        QrImageInput qrImageInput = new QrImageInput(bitmapImage );
        // Read the QR code
        QrReader qrReader = new QrReader();
        try
        {
     // Use the QR read method to read the values within your QR code(s)
            IEnumerable<QrResult> results = qrReader.Read(qrImageInput);
            // Output the decoded value
            foreach (var result in results)
            {
                Console.WriteLine("QR Code Value: " + result.Value);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine("Error reading QR code: " + ex.Message);
        }
    }
}
using IronQr;
using IronSoftware.Drawing;
using System;
class Program
{
    static void Main()
    {
        // Load the image using a file stream
        using var stream = File.OpenRead("sample-qr.png");
        var bitmapImage = AnyBitmap.FromStream(stream);
        QrImageInput qrImageInput = new QrImageInput(bitmapImage );
        // Read the QR code
        QrReader qrReader = new QrReader();
        try
        {
     // Use the QR read method to read the values within your QR code(s)
            IEnumerable<QrResult> results = qrReader.Read(qrImageInput);
            // Output the decoded value
            foreach (var result in results)
            {
                Console.WriteLine("QR Code Value: " + result.Value);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine("Error reading QR code: " + ex.Message);
        }
    }
}
Imports IronQr
Imports IronSoftware.Drawing
Imports System
Friend Class Program
	Shared Sub Main()
		' Load the image using a file stream
		Dim stream = File.OpenRead("sample-qr.png")
		Dim bitmapImage = AnyBitmap.FromStream(stream)
		Dim qrImageInput As New QrImageInput(bitmapImage)
		' Read the QR code
		Dim qrReader As New QrReader()
		Try
	 ' Use the QR read method to read the values within your QR code(s)
			Dim results As IEnumerable(Of QrResult) = qrReader.Read(qrImageInput)
			' Output the decoded value
			For Each result In results
				Console.WriteLine("QR Code Value: " & result.Value)
			Next result
		Catch ex As Exception
			Console.WriteLine("Error reading QR code: " & ex.Message)
		End Try
	End Sub
End Class
$vbLabelText   $csharpLabel

Konsolenausgabe

Wie man QR aus Bild in C# liest: Abbildung 3 - QR-Code-Wert Konsolenausgabe

Dieser Code lädt das QR-Code-Bild, liest den ersten erkannten QR-Code und druckt den dekodierten Inhalt. Einfach und effektiv. Von hier aus können Sie die Werte der QR-Codes für die weitere Nutzung speichern.

Umgang mit mehreren QR-Codes

Wenn Ihr Bild mehrere QR-Codes enthält (z.B. ein Blatt mit Produktetiketten), können Sie alle extrahieren. Für dieses Beispiel werden wir das folgende QR-Code-Bild durch unser Programm laufen lassen:

Wie man QR aus Bild in C# liest: Abbildung 4 - Bild mit mehreren QR-Codes

using IronQr;
using IronSoftware.Drawing;
using System;
class Program
{
    static void Main()
    {
        // Load the image from file
        var inputImage = AnyBitmap.FromFile("SampleCodes.png");
        QrImageInput qrImageInput = new QrImageInput(inputImage);
        // Read the QR code
        QrReader qrReader = new QrReader();
        IEnumerable<QrResult> results = qrReader.Read(qrImageInput);
        // Output the decoded value
        foreach (var result in results)
        {
            Console.WriteLine("QR Code Value: " + result.Value);
        }
    }
}
using IronQr;
using IronSoftware.Drawing;
using System;
class Program
{
    static void Main()
    {
        // Load the image from file
        var inputImage = AnyBitmap.FromFile("SampleCodes.png");
        QrImageInput qrImageInput = new QrImageInput(inputImage);
        // Read the QR code
        QrReader qrReader = new QrReader();
        IEnumerable<QrResult> results = qrReader.Read(qrImageInput);
        // Output the decoded value
        foreach (var result in results)
        {
            Console.WriteLine("QR Code Value: " + result.Value);
        }
    }
}
Imports IronQr
Imports IronSoftware.Drawing
Imports System
Friend Class Program
	Shared Sub Main()
		' Load the image from file
		Dim inputImage = AnyBitmap.FromFile("SampleCodes.png")
		Dim qrImageInput As New QrImageInput(inputImage)
		' Read the QR code
		Dim qrReader As New QrReader()
		Dim results As IEnumerable(Of QrResult) = qrReader.Read(qrImageInput)
		' Output the decoded value
		For Each result In results
			Console.WriteLine("QR Code Value: " & result.Value)
		Next result
	End Sub
End Class
$vbLabelText   $csharpLabel

Ausgabe

Wie man QR aus Bild in C# liest: Abbildung 5 - QR-Code-Wert-Ausgabe

Häufige Anwendungsfälle für das QR-Code-Scannen

Hier sind ein paar echte Szenarien, in denen das Lesen von QR-Codes von Bildern wertvoll wird:

  • Inventar- und Anlagenverwaltung: Automatisieren Sie die Artikelidentifikation durch das Scannen von QR-Codes aus Verpackungsbildern.
  • Zwei-Faktor-Authentifizierung (2FA): QR-Codes von 2FA-Einrichtungsbildschirmen einlesen, um bei der sicheren Konfiguration zu helfen.
  • Mobile App-Integration: Mobile URLs oder app-spezifische Deep-Links starten, indem geteilte QR-Screenshots gescannt werden.
  • Event Ticketing: Ticket-QR-Codes validieren, die per E-Mail gesendet oder auf einem Bildschirm angezeigt werden.
  • Zahlungsgateways: Zahlungsdaten extrahieren, die in QR-Codes für Fintech-Anwendungen eingebettet sind.

In allen diesen Anwendungsfällen sind schnelle und genaue Erkennung der Schlüssel—etwas, das IronQR mit Leichtigkeit bewältigt.

Tips zur Fehlerbehebung

Wenn Sie auf Probleme beim Lesen von QR-Codes stoßen, ziehen Sie das Folgende in Betracht:

Schlechte Bildqualität

Unscharfe oder niedrigauflösende Bilder können es schwierig machen, einen QR-Code zu erkennen. Verwenden Sie, wenn möglich, qualitativ hochwertige Eingaben.

QR-Code nicht erkannt

Stellen Sie sicher, dass das Bild nicht zu dunkel ist, einen starken Kontrast aufweist und der QR-Code nicht verdeckt ist. Versuchen Sie, das Bild zu beschneiden, um sich auf den QR-Bereich zu konzentrieren.

Fehlerbehandlung

Wickeln Sie Ihre QR-Lese-Logik stets in try-catch-Blöcke, um beschädigte Dateien oder unerwartete Formate elegant zu handhaben:

try
{
    IEnumerable<QrResult> results = qrReader.Read(qrImageInput);
    // Output the decoded value
    foreach (var result in results)
    {
        Console.WriteLine("QR Code Value: " + result.Value);
    }
}
catch (Exception ex)
{
    Console.WriteLine("Error reading QR code: " + ex.Message);
}
try
{
    IEnumerable<QrResult> results = qrReader.Read(qrImageInput);
    // Output the decoded value
    foreach (var result in results)
    {
        Console.WriteLine("QR Code Value: " + result.Value);
    }
}
catch (Exception ex)
{
    Console.WriteLine("Error reading QR code: " + ex.Message);
}
Try
	Dim results As IEnumerable(Of QrResult) = qrReader.Read(qrImageInput)
	' Output the decoded value
	For Each result In results
		Console.WriteLine("QR Code Value: " & result.Value)
	Next result
Catch ex As Exception
	Console.WriteLine("Error reading QR code: " & ex.Message)
End Try
$vbLabelText   $csharpLabel

Abschließende Gedanken

Das Lesen von QR-Codes aus Bildern in C# muss nicht schwierig sein. Mit IronQR können Sie das Scannen von QR-Codes in Ihre .NET-Anwendungen mit nur wenigen Zeilen Code integrieren. Seine Einfachheit, plattformübergreifende Kompatibilität und hervorragende Leistung machen es zu einem bevorzugten Tool für Entwickler, die an modernen, QR-fähigen Systemen arbeiten.

Wenn Sie diese Funktionalität erweitern möchten, ziehen Sie in Betracht, Folgendes zu erkunden:

Installieren Sie die kostenlose IronQR-Testversion, um heute zu beginnen und zu erfahren, wie diese Bibliothek Ihre QR-Code-Aufgaben verbessern kann.

Häufig gestellte Fragen

Wie kann ich QR-Codes von Bildern in C# lesen?

Sie können IronQR verwenden, um QR-Codes von Bildern in C# zu lesen. IronQR bietet Methoden zum Scannen und Extrahieren von QR-Code-Daten aus verschiedenen Bildformaten wie PNG, JPG und TIFF mit minimalem Code.

Welche Schritte sind erforderlich, um IronQR in einem .NET-Projekt einzurichten?

Um IronQR in einem .NET-Projekt einzurichten, verwenden Sie die NuGet-Paket-Manager-Konsole mit dem Befehl Install-Package IronQR, oder finden Sie IronQR in der NuGet-Paket-Manager-GUI innerhalb von Visual Studio und klicken Sie auf 'Install'.

Wie kann IronQR beim Lesen von QR-Codes in Bildern von geringer Qualität helfen?

IronQR ist dafür ausgelegt, QR-Code-Lesen aus Bildern mit unterschiedlichster Qualität zu bewältigen. Für beste Ergebnisse sorgen Sie jedoch dafür, dass das Bild guten Kontrast hat und der Fokus auf dem QR-Code-Bereich liegt. Wenn die Erkennung fehlschlägt, versuchen Sie, die Bildqualität zu verbessern oder das Bild zu beschneiden.

Kann IronQR mehrere QR-Codes aus einem einzigen Bild lesen?

Ja, IronQR kann mehrere QR-Codes aus einem einzigen Bild erkennen und lesen. Dies ist nützlich für die Verarbeitung von Dokumenten oder Etiketten mit mehreren QR-Codes.

Was sind häufige Anwendungsfälle für das Lesen von QR-Codes in .NET-Anwendungen?

Häufige Anwendungsfälle sind Bestandsverwaltung, Zwei-Faktor-Authentifizierung, mobile App-Integrationen, Event-Ticketing und Zahlungsgateways. IronQR erleichtert diese Anwendungen, indem es schnelle und zuverlässige QR-Code-Lesefunktionen bereitstellt.

Wie gewährleistet IronQR plattformübergreifende Kompatibilität?

IronQR unterstützt .NET Framework, .NET Core, .NET Standard und .NET 6/7+, was plattformübergreifende Kompatibilität für Windows, Linux und andere Umgebungen bietet.

Was sollte ich tun, wenn IronQR einen QR-Code nicht lesen kann?

Wenn IronQR einen QR-Code nicht lesen kann, überprüfen Sie die Bildqualität auf Klarheit und Kontrast. Stellen Sie sicher, dass auf dem QR-Code keine Hindernisse liegen und ziehen Sie in Erwägung, das Bild zu beschneiden, um den QR-Code-Bereich zu fokussieren. Wenn die Probleme weiterhin bestehen, überprüfen Sie, ob das Dateiformat unterstützt wird.

Wie kann ich Ausnahmen behandeln, wenn ich IronQR zum Lesen von QR-Codes verwende?

Um Ausnahmen zu behandeln, umgeben Sie Ihren IronQR-Code mit try-catch-Blöcken. Dieser Ansatz hilft, Probleme wie beschädigte Dateien oder nicht unterstützte Formate elegant zu verwalten.

Was sind die Vorteile der Verwendung von IronQR für die QR-Code-Verarbeitung?

IronQR bietet Hochgeschwindigkeitsleistung, unterstützt mehrere Bildformate und bietet Stabilität auf Unternehmensniveau. Es ist einfach in verschiedene .NET-Anwendungen zu integrieren und somit ideal für Entwickler, die effiziente QR-Code-Verarbeitungslösungen suchen.

Wie kann ich die Genauigkeit der QR-Code-Erkennung mit IronQR verbessern?

Verbessern Sie die Erkennungsgenauigkeit, indem Sie hochqualitative Bilder mit gutem Kontrast und Fokus verwenden. Stellen Sie sicher, dass QR-Codes nicht verdeckt sind, und ziehen Sie in Erwägung, Bildvorverarbeitungstechniken zu verwenden, wenn nötig.

Jordi Bardia
Software Ingenieur
Jordi ist am besten in Python, C# und C++ versiert. Wenn er nicht bei Iron Software seine Fähigkeiten einsetzt, programmiert er Spiele. Mit Verantwortung für Produkttests, Produktentwicklung und -forschung trägt Jordi mit immensem Wert zur kontinuierlichen Produktverbesserung bei. Die abwechslungsreiche Erfahrung hält ihn gefordert und engagiert, ...
Weiterlesen