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.

Im Gegensatz zu Open-Source-Alternativen legt IronQR den Fokus auf stabile Unternehmensklasse, kommerzielles Lizenzieren und professionelle Unterstützung—was es zu einer ausgezeichneten Wahl für geschäftskritische Anwendungen macht.

Setting Up IronQR in Your C# Project

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 in C# einen QR-Code aus einem Bild 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 in C# einen QR-Code aus einem Bild liest: Abbildung 3 - Konsolenausgabe des QR-Code-Werts

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 in C# einen QR-Code aus einem Bild 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 einen QR-Code aus einem Bild in C# liest: Abbildung 5 - Ausgabe des QR-Code-Werts

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:

  • Bestands- und Anlagenverwaltung: Automatisierte Artikelidentifizierung durch Scannen von QR-Codes auf Verpackungsbildern.
  • Zwei-Faktor-Authentifizierung (2FA): QR-Codes von den 2FA-Einrichtungsbildschirmen werden analysiert, um eine sichere Konfiguration zu ermöglichen.
  • Mobile App Integration: Starten Sie mobile URLs oder app-spezifische Deep Links durch Scannen geteilter QR-Screenshots.
  • Veranstaltungstickets: Validieren Sie die per E-Mail versendeten oder auf einem Bildschirm angezeigten Ticket-QR-Codes.
  • Zahlungsportale: Extrahieren von in QR-Codes eingebetteten Zahlungsdaten für Fintech-Anwendungen.

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. Beschneiden Sie das Bild, um den QR-Bereich zu fokussieren.

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.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen

Iron-Support-Team

Wir sind 24 Stunden am Tag, 5 Tage die Woche online.
Chat
E-Mail
Rufen Sie mich an