Zum Fußzeileninhalt springen
IRONQR NUTZEN

QR-Code .NET Core: QR-Codes in C# lesen und generieren

Bei der Entwicklung von Web- oder Unternehmensanwendungen auf Basis von .NET Core ist die Unterstützung von QR-Codes – beispielsweise für die Bestandsverfolgung, Zahlungsabwicklung oder Zwei-Faktor-Authentifizierung – eine häufige Anforderung. Anstatt Entwicklungszyklen für Low-Level-Codierungsalgorithmen aufzuwenden, können Sie auf eine spezialisierte Bibliothek zurückgreifen, die den gesamten Workflow abdeckt. IronQR bietet eine Komplettlösung für QR-Codes for .NET, die alles von der einfachen Generierung bis zum ML-gestützten Lesen und der erweiterten Fehlerkorrektur abdeckt.

Möchten Sie es selbst ausprobieren? Starten Sie noch heute Ihre kostenlose Testphase und sehen Sie, wie schnell Sie QR-Code-Funktionalität in Ihr Projekt integrieren können.

NuGet Mit NuGet installieren

PM >  Install-Package IronQR

Schauen Sie sich IronQR auf NuGet für eine schnelle Installation an. Mit über 10 Millionen Downloads transformiert es die PDF-Entwicklung mit C#. Sie können auch das DLL herunterladen.

Wie installiert man die QR-Code-Bibliothek?

Die Installation von IronQR über NuGet dauert nur wenige Sekunden. Öffnen Sie Visual Studio, gehen Sie zu Tools > NuGet Paket-Manager > NuGet Pakete für Projektmappe verwalten , suchen Sie nach IronQR und klicken Sie auf Installieren . Das Paket hat minimale Abhängigkeiten und ist sofort einsatzbereit für Windows, macOS und Linux.

Install-Package IronQR

IronQR ist kompatibel mit .NET Core 6, 7, 8, 9 und 10 sowie .NET Framework 4.6.2 und höher. Bei plattformübergreifenden Projekten übernimmt eine SkiaSharp-Integration die Bildverarbeitung auf Nicht-Windows-Laufzeitumgebungen. Die Bibliothek funktioniert mit ASP.NET Core Webanwendungen, Konsolenanwendungen und Desktop-Lösungen ohne zusätzliche Laufzeitkonfiguration. Nach der Installation stehen alle notwendigen Erweiterungsmethoden und -typen sofort zur Verfügung.

Wie liest man einen einfachen QR-Code aus einem Bild?

Das Auslesen von QR-Code-Daten aus Bilddateien erfordert nur wenige Codezeilen. Die Klasse QrReader verwendet ein fortschrittliches Machine-Learning-Modell, das die Bildqualität bewertet und automatisch den richtigen Segmentierungsmodus auswählt, sodass Sie auch dann genaue Ergebnisse erhalten, wenn das Eingabebild nicht optimal ist.

using IronQr;
using IronSoftware.Drawing;

// Load image containing QR code
var inputBmp = AnyBitmap.FromFile("qr-sample.png");
// Create QrImageInput from the bitmap
QrImageInput imageInput = new QrImageInput(inputBmp);
// Initialize QR Reader with ML model
QrReader reader = new QrReader();
// Read and decode all QR codes in the image
IEnumerable<QrResult> results = reader.Read(imageInput);
// Output decoded text strings
foreach (var qrCode in results)
{
    Console.WriteLine($"QR Code Value: {qrCode.Value}");
    Console.WriteLine($"URL: {qrCode.Url}");
}
using IronQr;
using IronSoftware.Drawing;

// Load image containing QR code
var inputBmp = AnyBitmap.FromFile("qr-sample.png");
// Create QrImageInput from the bitmap
QrImageInput imageInput = new QrImageInput(inputBmp);
// Initialize QR Reader with ML model
QrReader reader = new QrReader();
// Read and decode all QR codes in the image
IEnumerable<QrResult> results = reader.Read(imageInput);
// Output decoded text strings
foreach (var qrCode in results)
{
    Console.WriteLine($"QR Code Value: {qrCode.Value}");
    Console.WriteLine($"URL: {qrCode.Url}");
}
$vbLabelText   $csharpLabel

QR-Code Eingabe

QR-Code-Generator for .NET Core: QR-Codes mit nur wenigen Codezeilen lesen und generieren: Bild 1 – QR-Code eingeben

Ausgabe

QR-Code-Generator for .NET Core: QR-Codes mit nur wenigen Codezeilen lesen und generieren: Bild 2 – Beispielausgabe eines QR-Code-Scans

Die Methode QrReader.Read() verarbeitet den Code QrImageInput und gibt einen Code IEnumerable<QrResult> zurück, wobei jedes Ergebnis den dekodierten Text, die URL (falls vorhanden) und die räumliche Position des QR-Symbols im Bild enthält. Die Bibliothek akzeptiert Byte-Arrays, Dateipfade und AnyBitmap Objekte und bietet Ihnen somit Flexibilität für jede Projektarchitektur – egal ob Sie von der Festplatte, einer Datenbank oder einem Live-Kamerabild lesen.

Das dem Reader zugrunde liegende ML-Modell unterscheidet IronQR von rein algorithmischen Bibliotheken. Es bewältigt Unvollkommenheiten der realen Welt wie Bewegungsunschärfe, teilweise Verdeckung und ungleichmäßige Beleuchtung, ohne dass eine manuelle Vorverarbeitung oder Schwellenwertanpassung erforderlich ist.

Wie extrahiert man erweiterte QR-Code-Daten?

Über die grundlegende Wertdekodierung hinaus liefert IronQR Koordinaten, Rohdatensegmente und Informationen auf Modulebene aus jedem gescannten Symbol. Dies ist unerlässlich für Dokumentenverarbeitungs-Workflows, bei denen genau bekannt sein muss, wo sich ein QR-Code auf der Seite befindet, oder für Anwendungen, die mehrere Codes in einem einzigen Bild verarbeiten müssen.

using IronQr;
using IronSoftware.Drawing;

var inputBmp = AnyBitmap.FromFile("document-with-qr.png");
QrImageInput imageInput = new QrImageInput(inputBmp);
QrReader reader = new QrReader();
IEnumerable<QrResult> results = reader.Read(imageInput);
foreach (var qrCode in results)
{
    // Access decoded value
    Console.WriteLine($"Data: {qrCode.Value}");
    // Get corner coordinate positions
    foreach (PointF point in qrCode.Points)
    {
        Console.WriteLine($"Position: {point.X}, {point.Y}");
    }
}
using IronQr;
using IronSoftware.Drawing;

var inputBmp = AnyBitmap.FromFile("document-with-qr.png");
QrImageInput imageInput = new QrImageInput(inputBmp);
QrReader reader = new QrReader();
IEnumerable<QrResult> results = reader.Read(imageInput);
foreach (var qrCode in results)
{
    // Access decoded value
    Console.WriteLine($"Data: {qrCode.Value}");
    // Get corner coordinate positions
    foreach (PointF point in qrCode.Points)
    {
        Console.WriteLine($"Position: {point.X}, {point.Y}");
    }
}
$vbLabelText   $csharpLabel

QR-Eingabe

QR-Code-Generator for .NET Core: QR-Codes mit nur wenigen Codezeilen lesen und generieren: Bild 3 – QR-Code eingeben

Erweiterte QR-Leseergebnisse

QR-Code-Generator .NET Core: QR-Codes mit nur wenigen Codezeilen lesen und generieren: Bild 4 – Ergebnisse für die erweiterte QR-Datenextraktion

Die Sammlung QrResult.Points enthält die vier Eckkoordinaten des erkannten QR-Symbols im Pixelraum. Ihre Anwendung kann diese verwenden, um Begrenzungsrahmen auf Dokumentbildern zu überlagern, den QR-Bereich für die Weiterverarbeitung auszuschneiden oder die Standortdaten an ein nachgelagertes System weiterzugeben, das physische Koordinaten logischen Dokumentpositionen zuordnet.

IronQR verarbeitet Codes mit benutzerdefinierten eingebetteten Logos, beschädigten Modulen oder niedrig aufgelösten Eingaben über dieselbe ML-Pipeline. Die Bibliothek benötigt keine separaten Vorverarbeitungsschritte – Erkennung und Dekodierung erfolgen in einem einzigen Aufruf von Read().

Wie beeinflussen Fehlerkorrekturstufen die Qualität von QR-Codes?

Die Fehlerkorrektur ist der Mechanismus, der es einem QR-Scanner ermöglicht, die Originaldaten wiederherzustellen, selbst wenn ein Teil des Codes verdeckt, schlecht gedruckt oder physisch beschädigt ist. Der QR-Code-Standard definiert vier Stufen – Niedrig (L), Mittel (M), Quartil (Q) und Hoch (H) –, bei denen jeweils Speicherkapazität gegen Schadensresistenz eingetauscht wird.

Ebene Wiederherstellungskapazität Optimale Nutzung
L ~7% Klare Digitalanzeigen, maximale Datendichte
M ~15% Allgemeine Druckanwendungen
Q ~25% Industrieetiketten, mäßiger Verschleiß zu erwarten
H ~30% Eingebettete Logos, Oberflächen im Außenbereich oder stark beanspruchte Oberflächen

Bei der Generierung von QR-Codes stellt die Angabe eines höheren Fehlerkorrekturniveaus sicher, dass die Ausgabe auch unter realen Scanbedingungen Bestand hat:

using IronQr;
using IronSoftware.Drawing;

// Configure QR options with high error correction
var qrOptions = new QrOptions(QrErrorCorrectionLevel.High, 20);
// Generate a QR code with specified error correction
QrCode myQr = QrWriter.Write("https://ironsoftware.com", qrOptions);
// Save as PNG image
AnyBitmap qrImage = myQr.Save();
qrImage.SaveAs("high-error-correction-qr.png");
using IronQr;
using IronSoftware.Drawing;

// Configure QR options with high error correction
var qrOptions = new QrOptions(QrErrorCorrectionLevel.High, 20);
// Generate a QR code with specified error correction
QrCode myQr = QrWriter.Write("https://ironsoftware.com", qrOptions);
// Save as PNG image
AnyBitmap qrImage = myQr.Save();
qrImage.SaveAs("high-error-correction-qr.png");
$vbLabelText   $csharpLabel

Ausgabe

QR-Code-Generator for .NET Core: QR-Codes mit nur wenigen Codezeilen lesen und generieren: Bild 5 – Generierter QR-Code mit hoher Fehlerkorrektur

Der Konstruktor QrOptions akzeptiert die Fehlerkorrekturstufe und eine maximale Versionsnummer. Version-40-Codes speichern bis zu 7.089 numerische Zeichen, während Version-1-Codes nur 41 Zeichen speichern können. Durch die Festlegung einer niedrigeren maximalen Version wird die Ausgabegröße begrenzt, was nützlich ist, wenn Sie innerhalb eines Stapels einheitliche physische Abmessungen benötigen. Je höher das Fehlerkorrekturniveau, desto mehr Module werden für Redundanz reserviert, wodurch die Nettodatenkapazität in jeder Version reduziert wird.

Die Fehlertoleranzfunktion von IronQR geht mit dieser Eigenschaft einher – beim Lesen von Codes, die mit höheren Korrekturstufen erzeugt wurden, kann die Bibliothek Daten aus Codes wiederherstellen, die mit einem rein algorithmischen Decoder vollständig fehlschlagen würden.

Wie generiert man QR-Codes mit internationalen Zeichen?

IronQR unterstützt alle QR-Codierungsmodi : numerisch, alphanumerisch, Byte und Kanji. Für japanische Texte und andere Unicode-Inhalte wählt die Bibliothek automatisch die speichereffizienteste Kodierung aus:

using IronQr;
using IronSoftware.Drawing;

// Generate QR that encodes Japanese Unicode text
QrCode japaneseQr = QrWriter.Write("こんにちは世界");
// The library selects Kanji mode automatically
AnyBitmap qrImage = japaneseQr.Save();
qrImage.SaveAs("japanese-qr.png");
using IronQr;
using IronSoftware.Drawing;

// Generate QR that encodes Japanese Unicode text
QrCode japaneseQr = QrWriter.Write("こんにちは世界");
// The library selects Kanji mode automatically
AnyBitmap qrImage = japaneseQr.Save();
qrImage.SaveAs("japanese-qr.png");
$vbLabelText   $csharpLabel

QR-Code-Ausgabe

QR-Code-Generator for .NET Core: QR-Codes mit nur wenigen Codezeilen lesen und generieren: Bild 6 – Ausgabecode (QR-Code)

Die Kanji-Kodierung speichert zwei Bytes pro Modul anstatt acht Bits, sodass ein japanischer QR-Code in derselben Version deutlich mehr Zeichen speichert als ein UTF-8-Byte-Modus-Äquivalent. Bei gemischten Inhalten – wie beispielsweise einer URL gefolgt von japanischem Text – segmentiert IronQR die Eingabe und kodiert jedes Segment im optimalen Modus. Sie müssen keine Segmentgrenzen angeben oder Kodierungshilfsfunktionen manuell aufrufen; Die Kodierungspipeline erledigt das für Sie.

Diese automatische Auswahl umfasst auch Extended Channel Interpretation (ECI)-Markierungen, die Scannern signalisieren, dass nicht standardmäßige Zeichensätze verwendet werden. Anwendungen, die auf internationale Märkte abzielen, können beliebige Unicode-Zeichenketten direkt an QrWriter.Write() übergeben, ohne dass eine separate Konfiguration erforderlich ist.

Wie verwendet man Payload-Generatoren für strukturierte QR-Daten?

Ein QR-Code, der eine einfache URL kodiert, eignet sich für die einfache Linkweitergabe, aber viele Anwendungen müssen strukturierte Daten kodieren – WLAN-Zugangsdaten, Visitenkarten im vCard-Format oder Ereignisdaten. Das manuelle Formatieren dieser Nutzdaten ist fehleranfällig; Ein fehlendes Semikolon oder eine falsche Feldreihenfolge führen dazu, dass Scanner die Daten falsch interpretieren.

IronQR stellt Payload-Hilfsfunktionen bereit, die diese strukturierten Zeichenketten korrekt erstellen:

using IronQr;
using IronSoftware.Drawing;

// Generate QR code with URL payload
var urlQrCode = QrWriter.Write("https://ironsoftware.com/csharp/qr/");
// Save QR as PNG image file
AnyBitmap qrImage = urlQrCode.Save();
qrImage.SaveAs("url-qr-code.png");
Console.WriteLine("QR code generated successfully.");
using IronQr;
using IronSoftware.Drawing;

// Generate QR code with URL payload
var urlQrCode = QrWriter.Write("https://ironsoftware.com/csharp/qr/");
// Save QR as PNG image file
AnyBitmap qrImage = urlQrCode.Save();
qrImage.SaveAs("url-qr-code.png");
Console.WriteLine("QR code generated successfully.");
$vbLabelText   $csharpLabel

Erstellter QR-Code

QR-Code-Generator for .NET Core: QR-Codes mit nur wenigen Codezeilen lesen und generieren: Bild 7 – Aus einer URL erstellter QR-Code

Die Methode QrWriter.Write() akzeptiert entweder eine einfache Zeichenkette oder ein strukturiertes Payload-Objekt. Bei WLAN-Netzwerken kodiert die Nutzlast die SSID, das Passwort und den Sicherheitstyp in einem Format, das von Android- und iOS-Scannern erkannt wird. Kontaktinformationen werden gemäß dem MeCard-Standard ausgegeben, der von den meisten mobilen QR-Code-Lesegeräten verwendet wird. Die Seite zur Generierungsfunktion dokumentiert alle unterstützten Payload-Typen und deren erforderliche Felder.

Die Bibliothek gibt Bilder in konfigurierbaren Pixelabmessungen aus. Für den Produktionseinsatz gewährleistet die Generierung von Codes mit einer Mindestgröße von 200x200 Pixeln ein zuverlässiges Scannen aus typischen Smartphone-Entfernungen. Größere Formate eignen sich für Außenanwendungen oder Druckanwendungen, bei denen der Scanabstand einen Meter überschreitet.

Wie kann man das Erscheinungsbild eines QR-Codes anpassen?

Mit IronQR haben Sie die Kontrolle über das visuelle Erscheinungsbild der generierten Codes, ohne die Lesbarkeit zu beeinträchtigen. Sie können die Vorder- und Hintergrundfarben ändern, ein individuelles Branding anwenden oder ein Logo in die Ruhezone in der Mitte einbetten.

using IronQr;
using IronSoftware.Drawing;

// Define custom colors for the QR code
var darkColor = Color.FromArgb(30, 30, 120);   // Deep navy foreground
var lightColor = Color.White;

var options = new QrOptions(QrErrorCorrectionLevel.High, maxVersion: 20)
{
    BackgroundColor = lightColor,
    Color = darkColor,
    // Embed a logo image into the QR center
    Logo = AnyBitmap.FromFile("logo.png")
};

QrCode styledQr = QrWriter.Write("https://ironsoftware.com/csharp/qr/", options);
AnyBitmap output = styledQr.Save();
output.SaveAs("branded-qr.png");
using IronQr;
using IronSoftware.Drawing;

// Define custom colors for the QR code
var darkColor = Color.FromArgb(30, 30, 120);   // Deep navy foreground
var lightColor = Color.White;

var options = new QrOptions(QrErrorCorrectionLevel.High, maxVersion: 20)
{
    BackgroundColor = lightColor,
    Color = darkColor,
    // Embed a logo image into the QR center
    Logo = AnyBitmap.FromFile("logo.png")
};

QrCode styledQr = QrWriter.Write("https://ironsoftware.com/csharp/qr/", options);
AnyBitmap output = styledQr.Save();
output.SaveAs("branded-qr.png");
$vbLabelText   $csharpLabel

Durch das Einbetten eines Logos verringert sich der effektive Datenbereich, daher benötigt die Bibliothek beim Bereitstellen eines Logos die Fehlerkorrekturstufe H. Die reservierte Ruhezone im Zentrum umfasst etwa 30 % der Codefläche, was innerhalb der Wiederherstellungskapazität der H-Ebene liegt. Die Bibliothek setzt diese Einschränkung automatisch durch – wenn Sie neben einem Logo eine niedrigere Fehlerkorrekturstufe festlegen, löst IronQR eine Ausnahme mit einer beschreibenden Meldung aus, anstatt einen Code zu erzeugen, der unzuverlässig gescannt werden kann.

Für ASP.NET Core Anwendungen zeigt das Tutorial zum ASP.NET Core QR-Code-Generator, wie generierte QR-Codes als Bildantworten von einer Controller-Aktion bereitgestellt werden. Der Ausgabestream schreibt direkt in die Antwort, ohne zwischenzeitliche Datei-E/A, wodurch die Latenz für stark frequentierte Endpunkte gering bleibt.

Wie liest man QR-Codes in einer ASP.NET Core Anwendung?

Das Scannen von QR-Codes serverseitig – aus hochgeladenen Bildern, Dokumentenverarbeitungspipelines oder automatisierten Inspektionssystemen – ist ein häufiger Anwendungsfall für die Lese-API. Die Anleitung zum ASP.NET -QR-Code-Scanner beschreibt die vollständige Einrichtung von Controller und Dienst, das grundlegende Lesemuster ist jedoch dasselbe wie bei einer Konsolenanwendung:

using IronQr;
using IronSoftware.Drawing;
using Microsoft.AspNetCore.Mvc;

[ApiController]
[Route("api/qr")]
public class QrScanController : ControllerBase
{
    [HttpPost("scan")]
    public IActionResult Scan(IFormFile imageFile)
    {
        using var stream = imageFile.OpenReadStream();
        var bitmap = AnyBitmap.FromStream(stream);
        var imageInput = new QrImageInput(bitmap);
        var reader = new QrReader();
        var results = reader.Read(imageInput);

        var decoded = results.Select(r => new { r.Value, r.Url }).ToList();
        return Ok(decoded);
    }
}
using IronQr;
using IronSoftware.Drawing;
using Microsoft.AspNetCore.Mvc;

[ApiController]
[Route("api/qr")]
public class QrScanController : ControllerBase
{
    [HttpPost("scan")]
    public IActionResult Scan(IFormFile imageFile)
    {
        using var stream = imageFile.OpenReadStream();
        var bitmap = AnyBitmap.FromStream(stream);
        var imageInput = new QrImageInput(bitmap);
        var reader = new QrReader();
        var results = reader.Read(imageInput);

        var decoded = results.Select(r => new { r.Value, r.Url }).ToList();
        return Ok(decoded);
    }
}
$vbLabelText   $csharpLabel

Die Methode AnyBitmap.FromStream() akzeptiert jeden lesbaren Datenstrom. Daher funktioniert derselbe Codepfad für über ein Formular hochgeladene Dateien, aus dem Blob-Speicher abgerufene Bilder oder aus einer Videopipeline extrahierte Frames. Der Controller schreibt keine temporären Dateien auf die Festplatte, was für containerisierte Bereitstellungen relevant ist, da das Dateisystem dort möglicherweise schreibgeschützt ist.

Bei Szenarien mit hohem Durchsatz instanziieren Sie QrReader einmal pro Anwendungslebensdauer als Singleton, da die Kosten für das Laden des ML-Modells bei der ersten Konstruktion anfallen. Nachfolgende Read()-Aufrufe auf derselben Instanz sind threadsicher und teilen sich das geladene Modell.

Wie generiert man QR-Codes in einer .NET MAUI Anwendung?

Das .NET MAUI QR-Code-Tutorial demonstriert die vollständige plattformübergreifende Generierung auf iOS, Android, macOS und Windows. IronQR verwendet das SkiaSharp -Rendering-Backend, wenn es auf Nicht-Windows-Plattformen ausgeführt wird, wodurch eine konsistente Ausgabe auf allen MAUI-Zielen gewährleistet wird.

using IronQr;
using IronSoftware.Drawing;

// Generate QR and convert to a byte array for display in MAUI
QrCode qr = QrWriter.Write("https://ironsoftware.com/csharp/qr/");
AnyBitmap bitmap = qr.Save();
byte[] imageBytes = bitmap.ExportBytes();

// Bind imageBytes to an <Image Source> in your MAUI page
using IronQr;
using IronSoftware.Drawing;

// Generate QR and convert to a byte array for display in MAUI
QrCode qr = QrWriter.Write("https://ironsoftware.com/csharp/qr/");
AnyBitmap bitmap = qr.Save();
byte[] imageBytes = bitmap.ExportBytes();

// Bind imageBytes to an <Image Source> in your MAUI page
$vbLabelText   $csharpLabel

Auf mobilen Endgeräten gibt ExportBytes() ein PNG-Byte-Array zurück, das Sie direkt in StreamImageSource einlesen oder in ImageButton schreiben können. Das MAUI-Gerüst benötigt keine plattformspezifischen Codepfade – die gleiche Generierungslogik läuft auf allen vier MAUI-Zielen identisch ab.

Für VB .NET -Projekte ist die API-Oberfläche identisch; Lediglich die Syntax unterscheidet sich. Die Bibliothek wird als einzelnes NuGet Paket ausgeliefert, eine separate VB .NET -Assembly ist nicht erforderlich.

Was sind Ihre nächsten Schritte?

IronQR deckt den gesamten QR-Code-Lebenszyklus in .NET ab – von der grundlegenden Generierung und der strukturierten Nutzdatenkodierung bis hin zum ML-gestützten Lesen beschädigter oder markengeschützter Codes. Die Bibliothek übernimmt die Kanji-Kodierung, die Konfiguration der Fehlerkorrektur und die plattformübergreifende Bildausgabe, sodass Sie sich auf die für Ihre Anwendung spezifische Logik konzentrieren können.

Um das Gelernte in die Praxis umzusetzen:

Häufig gestellte Fragen

Welche .NET Versionen unterstützt IronQR ?

IronQR unterstützt .NET Core 6, 7, 8, 9 und 10 sowie .NET Framework 4.6.2 und höher. Es ist außerdem auf .NET Standard 2.0+ ausgerichtet und somit kompatibel mit Xamarin-, .NET MAUI, Blazor und ASP.NET Core Projekten.

Wie liest man in C# einen QR-Code aus einer Bilddatei?

Laden Sie das Bild mit `AnyBitmap.FromFile()`, übergeben Sie es an ein `QrImageInput`-Objekt und rufen Sie anschließend `QrReader.Read()` auf. Die Methode gibt ein `IEnumerable`-Objekt zurück. ` wobei jedes Ergebnis den dekodierten Wert, die URL und die Eckkoordinaten enthält.

Welche vier Fehlerkorrekturstufen gibt es bei QR-Codes?

Die vier Stufen sind Niedrig (L, ~7 % Wiederherstellung), Mittel (M, ~15 %), Quartil (Q, ~25 %) und Hoch (H, ~30 %). Höhere Stufen fügen Redundanzmodule hinzu, wodurch die Nettodatenkapazität reduziert, aber die Scan-Zuverlässigkeit bei beschädigten oder teilweise verdeckten Codes verbessert wird.

Kann IronQR QR-Codes lesen, die ein Logo enthalten oder teilweise beschädigt sind?

Ja. Das ML-gestützte Erkennungsmodell in IronQR verarbeitet teilweise beschädigte Codes, eingebettete Logos, Bewegungsunschärfe und niedrig auflösende Eingaben ohne manuelle Vorverarbeitung.

Wie bettet man mit IronQR ein Logo in einen QR-Code ein?

Setzen Sie die `Logo`-Eigenschaft eines `QrOptions`-Objekts auf ein `AnyBitmap` Ihres Logobildes und stellen Sie die Fehlerkorrekturstufe auf „Hoch“. IronQR erzwingt diese Einschränkung automatisch, da ein zentriertes Logo etwa 30 % der Codefläche einnimmt.

Unterstützt IronQR japanische und andere Unicode-Zeichen?

Ja. Übergeben Sie eine beliebige Unicode-Zeichenkette an `QrWriter.Write()`, und die Bibliothek wählt automatisch den Kanji-Modus für japanische Zeichen oder den Byte-Modus mit ECI-Markierungen für andere Unicode-Inhalte aus.

Wie generiert man QR-Codes in einer ASP.NET Core Anwendung?

Verwenden Sie `AnyBitmap.FromStream()`, um hochgeladene Bilder zu lesen, und `QrWriter.Write()`, um Codes zu generieren. Geben Sie die Ausgabe als `FileContentResult` mit dem MIME-Typ `image/png` zurück. Instanziieren Sie `QrReader` als Singleton, um die Kosten für das Laden des ML-Modells zu amortisieren.

Ist IronQR plattformübergreifend?

Ja. IronQR verwendet auf Nicht-Windows-Plattformen ein SkiaSharp-Rendering-Backend und bietet so eine konsistente QR-Code-Generierung und -Lesung auf macOS, Linux, iOS und Android über .NET MAUI.

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

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me