IRONBARCODE VERWENDEN

C# QR Code Reader (Schritt-für-Schritt-Tutorial für Einsteiger)

Jordi Bardia
Jordi Bardia
18. August 2024
Aktualisiert 18. August 2024
Teilen Sie:

Einführung

In der heutigen digital gesteuerten Welt ist der QR-Code (Quick Response Code) allgegenwärtig geworden und verbindet nahtlos physische und digitale Bereiche. Vom Marketing bis zur Logistik, vom Finanzwesen bis zum Gesundheitswesen spielen QR-Codes eine zentrale Rolle bei der Erleichterung eines effizienten Datenaustauschs.

In diesem Artikel tauchen wir in das Reich der C#-Entwicklung ein und erkunden, wie IronQR, eine der besten QR-Code-Bibliotheken auf dem Markt, Entwickler befähigt, die Möglichkeiten der QR-Code-Erkennung zu nutzen, Daten mühelos zu dekodieren und in verschiedenen Bereichen zu innovieren.

IronQR von Iron Software zeichnet sich als eine leistungsstarke .NET QR-Code-Lesebibliothek aus. Das von IronQR implementierte fortschrittliche maschinelle Lernmodell ermöglicht es Ihren Anwendungen, QR-Codes mit unübertroffener Genauigkeit und Effizienz zu dekodieren, selbst in schwierigen Szenarien.

Wie man QR-Codes mit C# und IronQR liest

  1. Erstellen Sie ein Visual Studio-Projekt mit .NET Windows Forms-Anwendungsvorlage

  2. Installieren Sie IronQR über den NuGet-Paketmanager.

  3. Holen Sie sich den QR-Code von der Kamera als Bild aus der AForge Library

  4. Lesen Sie QR-Codes mit IronQR.

    IronQR hebt sich als die führende C#-QR-Code-Leser-Bibliothek hervor, die sowohl QR-Codes scannen als auch QR-Code-Bilder innerhalb des .NET-Frameworks generieren kann. Durch den Einsatz modernster ML-Technologie hat IronQR das Lesen von QR-Codes auf ein noch nie dagewesenes Niveau gehoben.

    Ganz gleich, ob Sie QR-Codes von Bildern, Videos oder Live-Kamera-Feeds scannen, die ML-gestützte Lösung garantiert einen schnellen und zuverlässigen Informationsabruf.

    Dieser innovative Ansatz rationalisiert nicht nur die Datenextraktion, sondern erhöht auch die Sicherheit, indem er zwischen echten QR-Codes und potenziellen Bedrohungen unterscheidet. Dank der intuitiven API können Entwickler QR-Code-Funktionen innerhalb weniger Minuten nahtlos in ihre .NET-Projekte integrieren.

    IronQR lässt sich nahtlos in .NET Core (8, 7, 6, 5 und 3.1+), .NET Standard (2.0+) und .NET Framework (4.6.2+) integrieren. Die aktuelle Version von .NET Core erweitert die Unterstützung für Client-Betriebssysteme wie Linux, Unix und macOS sowie die Kompatibilität für die Entwicklung mobiler Anwendungen.

Voraussetzungen

  1. Visual Studio: Stellen Sie sicher, dass Visual Studio oder eine andere .NET-Entwicklungsumgebung installiert ist.

  2. Kompatible Kamera: Stellen Sie sicher, dass die Kamera mit Ihrem Gerät verbunden ist.

  3. NuGet-Paketmanager: Überprüfen Sie, ob Sie NuGet verwenden können, um Pakete in Ihrem Projekt zu verwalten.

Schritt 1: Erstellen eines Visual Studio-Projekts mit einer .NET Windows Forms-Anwendungsvorlage

Beginnen wir mit der Erstellung einer Windows Forms .NET-Anwendung zum Lesen von QR-Code-Barcodes aus Kamera-Videostreams oder Bilddateien. Öffnen Sie Visual Studio, wählen Sie "Neues Projekt erstellen" und dann die .NET Windows Forms-Anwendungsvorlage

Csharp Qr Code Reader Tutorial 1 related to Schritt 1: Erstellen eines Visual Studio-Projekts mit einer .NET Windows For...

Klicken Sie auf Weiter und geben Sie den Projektnamen ein

Csharp Qr Code Reader Tutorial 2 related to Schritt 1: Erstellen eines Visual Studio-Projekts mit einer .NET Windows For...

Wählen Sie die gewünschten .NET-Versionen aus und klicken Sie dann auf die Schaltfläche Erstellen

Csharp Qr Code Reader Tutorial 3 related to Schritt 1: Erstellen eines Visual Studio-Projekts mit einer .NET Windows For...

Schritt 2: Installieren Sie IronQR über den NuGet-Paketmanager.

IronQR kann mit dem NuGet Paket-Manager oder dem Visual Studio Paket-Manager installiert werden.

Csharp Qr Code Reader Tutorial 4 related to Schritt 2: Installieren Sie IronQR über den NuGet-Paketmanager.

Im Folgenden wird gezeigt, wie Sie dies mit Visual Studio tun können

Csharp Qr Code Reader Tutorial 5 related to Schritt 2: Installieren Sie IronQR über den NuGet-Paketmanager.

Schritt 3: Holen Sie sich den QR-Code von der Kamera als Bild aus der AForge Library

Um QR-Codes von Kamerageräten zu scannen, müssen wir die AForgeCore.Video.DirectShow-Bibliothek installieren. Dies kann mit dem Visual Studio-Paketmanager wie unten beschrieben geschehen. Klicken Sie mit der rechten Maustaste auf den Lösungsexplorer und öffnen Sie den Paketmanager.

Csharp Qr Code Reader Tutorial 6 related to Schritt 3: Holen Sie sich den QR-Code von der Kamera als Bild aus der AForge...

Diese Bibliothek kann auch über die NuGet-Paketkonsole wie unten installiert werden. Klicken Sie auf die Schaltfläche Installieren, um die Bibliothek zu installieren

Csharp Qr Code Reader Tutorial 7 related to Schritt 3: Holen Sie sich den QR-Code von der Kamera als Bild aus der AForge...

Schritt 4: Lesen Sie QR-Codes mit IronQR.

Der nächste Schritt besteht darin, eine PictureBox-Komponente im Formular zu erstellen, die zum Scannen des QR-Code-Bildes von der an das Gerät angeschlossenen Kamera benötigt wird.

Dies kann durch Ziehen und Ablegen aus dem Werkzeugkasten geschehen. Diese PictureBox wird benötigt, um die QR-Code-Daten vom Kameragerät zu lesen

Csharp Qr Code Reader Tutorial 8 related to Schritt 4: Lesen Sie QR-Codes mit IronQR.

Als nächstes müssen wir ein Textfeld ziehen und ablegen, um die gelesenen QR-Codes anzuzeigen.

Csharp Qr Code Reader Tutorial 9 related to Schritt 4: Lesen Sie QR-Codes mit IronQR.

Fügen Sie den folgenden Code hinzu, um QR-Codes zu lesen und zu dekodieren, indem Sie IronQR verwenden.

using AForge.Video.DirectShow;
using AForge.Video;
using System.Drawing;
using IronQr;

namespace ReadQR
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            this.Load += Form1_Load;
            this.FormClosing += Form1_FormClosing;

        }

        private VideoCaptureDevice videoSource;
        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (videoSource != null && videoSource.IsRunning)
            {
                videoSource.SignalToStop();
                videoSource.WaitForStop();
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            FilterInfoCollection videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);

            if (videoDevices.Count > 0)
            {
                videoSource = new VideoCaptureDevice(videoDevices [0].MonikerString);
                videoSource.NewFrame += VideoSource_NewFrame;
                videoSource.Start();
            }
            else
            {
                MessageBox.Show("No video devices found.");
                Close();
            }
        }

        private void VideoSource_NewFrame(object sender, NewFrameEventArgs eventArgs)
        {
            // Update the picture box with the new frame from the camera.
            pictureBox1.Image = (Bitmap)eventArgs.Frame.Clone();

            var image = (Bitmap)eventArgs.Frame.Clone();

            // Set the license key
            License.LicenseKey = "YourKey";

            // Load  QrImageInput
            QrImageInput imageInput = new QrImageInput(image);

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

            // Read QR Codes
            IEnumerable<QrResult> results = reader.Read(imageInput);

            // display results
            MessageBox.Show(results.First().Value);
        }
    }
}
using AForge.Video.DirectShow;
using AForge.Video;
using System.Drawing;
using IronQr;

namespace ReadQR
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            this.Load += Form1_Load;
            this.FormClosing += Form1_FormClosing;

        }

        private VideoCaptureDevice videoSource;
        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (videoSource != null && videoSource.IsRunning)
            {
                videoSource.SignalToStop();
                videoSource.WaitForStop();
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            FilterInfoCollection videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);

            if (videoDevices.Count > 0)
            {
                videoSource = new VideoCaptureDevice(videoDevices [0].MonikerString);
                videoSource.NewFrame += VideoSource_NewFrame;
                videoSource.Start();
            }
            else
            {
                MessageBox.Show("No video devices found.");
                Close();
            }
        }

        private void VideoSource_NewFrame(object sender, NewFrameEventArgs eventArgs)
        {
            // Update the picture box with the new frame from the camera.
            pictureBox1.Image = (Bitmap)eventArgs.Frame.Clone();

            var image = (Bitmap)eventArgs.Frame.Clone();

            // Set the license key
            License.LicenseKey = "YourKey";

            // Load  QrImageInput
            QrImageInput imageInput = new QrImageInput(image);

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

            // Read QR Codes
            IEnumerable<QrResult> results = reader.Read(imageInput);

            // display results
            MessageBox.Show(results.First().Value);
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Eingabe Bilddatei

Der verschlüsselte Text im QR-Code lautet: Ich liebe IronQR

Csharp Qr Code Reader Tutorial 10 related to Eingabe Bilddatei

Ausgabe

Csharp Qr Code Reader Tutorial 11 related to Ausgabe

Beispiel Code Erläuterung

  1. Wir haben 2 Ereignisse in Windows-Formularen registriert Form1_Load, Form1_FormClosing

  2. Wir haben auch VideoSource_NewFrame auf eine Instanz von videoSource aus der AForgeCore.Video.DirectShow Bibliothek registriert

  3. Dann lesen wir die QR-Codes aus dem Live-Video-Stream

  4. Wenn der QR-Code erkannt wird, zeigen wir eine MessageBox mit dem entschlüsselten Text an

Lizenzierung (kostenlose Testversion verfügbar)

IronQR erfordert einen Lizenzschlüssel. Ein Testschlüssel kann von der Website hier bezogen werden. Dieser Schlüssel muss in appsettings.json platziert werden.

{
    "IronQR.LicenseKey":"MYLICENSE.KEY.TRIAL"
}

Geben Sie die E-Mail-ID an, um eine Testlizenz zu erhalten, und nach dem Absenden wird der Schlüssel per E-Mail zugestellt.

Csharp Qr Code Reader Tutorial 12 related to Lizenzierung (kostenlose Testversion verfügbar)

Schlussfolgerung

Zusammenfassend lässt sich sagen, dass QR-Codes ihre Ursprünge hinter sich gelassen haben und in unserem digitalen Ökosystem nicht mehr wegzudenken sind. Mit IronQR können C#-Entwickler die Leistungsfähigkeit der QR-Code-Erkennung nutzen, Daten in verschiedenen Arten von QR-Codes mühelos dekodieren und in verschiedenen Bereichen innovieren.

Mit der Weiterentwicklung und Integration von QR-Codes in neue Technologien wird ihre Bedeutung für den nahtlosen Datenaustausch und die Verbesserung der Benutzerfreundlichkeit weiter zunehmen. Nutzen Sie das Potenzial von QR-Codes mit IronQR und begeben Sie sich auf eine Reise der Innovation und Effizienz in der C#-Entwicklung.

Jordi Bardia
Software-Ingenieur
Jordi beherrscht vor allem Python, C# und C++. Wenn er seine Fähigkeiten bei Iron Software nicht einsetzt, programmiert er Spiele. Durch seine Mitverantwortung für Produkttests, Produktentwicklung und Forschung trägt Jordi wesentlich zur kontinuierlichen Produktverbesserung bei. Die vielseitigen Erfahrungen, die er sammelt, bieten ihm immer wieder neue Herausforderungen, und er sagt, dass dies einer seiner Lieblingsaspekte bei Iron Software ist. Jordi wuchs in Miami, Florida, auf und studierte Informatik und Statistik an der University of Florida.
< PREVIOUS
Wie man Barcodes in ASP.NET mit C# erzeugt

Sind Sie bereit, loszulegen? Version: 2025.4 gerade veröffentlicht

Lizenzen anzeigen >