Zum Fußzeileninhalt springen
MIT ANDEREN KOMPONENTEN VERGLEICHEN

Google ML Kit Barcode Scanning vs IronBarcode: C# Barcode Bibliothek Vergleich

Die Barcode-Scanfunktion von Google ML Kit ist auf Android wirklich beeindruckend. Es ist die Basis von Google Lens, es verarbeitet beschädigte und teilweise verdeckte Codes, es funktioniert auf dem Gerät ohne Netzwerkverbindung und es unterstützt eine breite Palette von 1D- und 2D-Formaten. Wenn .NET -Entwickler bei einem Vergleich von Barcode-Bibliotheken darauf stoßen, sind diese Angaben korrekt. Was in Vergleichsartikeln oft unerwähnt bleibt, ist, dass ML Kit weder ein .NET SDK noch ein NuGet Paket noch eine C#-API besitzt. Dieser Artikel richtet sich an Entwickler, die ML Kit in einer Liste gefunden haben und verstehen müssen, was die Verwendung von ML Kit in einem .NET Projekt in der Praxis bedeutet – und wie das entsprechende verwaltete Code-Äquivalent aussieht.

Was ist das Barcode-Scannen mit Google ML Kit?

Google ML Kit Barcode Scanning ist eine native mobile Bibliothek. Das ist keine Einschränkung, die man umgehen könnte; Es liegt am Design des Produkts. Das ML Kit ist in zwei Varianten erhältlich:

  • Android: Verteilt über Google Maven als com.google.mlkit:barcode-scanning (Kotlin/Java). Erfordert Google Play-Dienste auf dem Zielgerät. Verarbeitet InputImage-Objekte, die aus Kamerabildern, Datei-URIs oder Bitmaps erstellt wurden.
  • iOS: Wird über CocoaPods als GoogleMLKit/BarcodeScanning verteilt, mit einer Firebase-Abhängigkeit. Verwendet Swift oder Objective-C.

Es gibt keinen dotnet add package google-mlkit-barcode. Es gibt keinen using Google.MLKit.BarcodeScanning;. Google veröffentlicht keine .NET -Anbindung für ML Kit.

Von der Community gepflegte Xamarin-Bindings gab es schon immer, aber sie haben ein beständiges Problem: ML Kit aktualisiert seine Android- und iOS-SDKs häufig, und von Einzelpersonen oder kleinen Teams gepflegte Binding-Projekte hinken oft hinterher oder funktionieren gar gar nicht mehr, wenn sich die zugrunde liegende API ändert. Stand 2026 gibt es kein aktiv gepflegtes, produktionsreifes .NET NuGet Paket, das den Barcode-Scanner von ML Kit umschließt.

Was das ML-Kit gut kann

Es ist hilfreich zu verstehen, warum ML Kit bei Barcode-Vergleichen auftaucht. Auf nativem Android:

  • Inferenz direkt auf dem Gerät: Kein Server-Roundtrip. Das Modell von ML Kit läuft lokal mit Google Play-Diensten, was geringe Latenz und keine Netzwerkabhängigkeit beim Scannen bedeutet.
  • Fehlertoleranz: Das ML-Modell kommt mit beschädigten, teilweise verdeckten oder niedrig auflösenden Barcodes besser zurecht als viele schwellenwertbasierte Decoder. Dies ist ein echtes Alleinstellungsmerkmal für verbraucherorientierte Apps, die reale Codes scannen.
  • Google Lens-Integration: Der Scanner von ML Kit basiert auf demselben Technologie-Stack, der auch die Barcode-Erkennung von Google Lens ermöglicht. Das ist ein qualitativ hochwertiges Signal.
  • Formatvielfalt auf Mobilgeräten: QR-Code, EAN-13, EAN-8, Code 128, Code 39, Code 93, Codabar, ITF, PDF417, Data Matrix, aztekisch und UPC-A/UPC-E werden nativ unterstützt.
  • Keine Konfiguration erforderlich: Ein dreizeiliger Kotlin-Codeausschnitt erzeugt einen funktionierenden Scanner, ohne dass Schwellenwerte angepasst oder eine Decoderstrategie ausgewählt werden muss.

Das sind legitime Stärken. Das Problem für .NET -Entwickler ist nicht, dass ML Kit schlecht ist – sondern dass ML Kit ihnen ohne erheblichen Aufwand nicht zur Verfügung steht.

Die .NET -Entwicklungsrealität

Wenn ein .NET Entwickler Barcodes scannen muss, sieht der Ablauf mit dem ML Kit in der Praxis folgendermaßen aus:

Keine async/await C#-API. ML Kit verwendet die Android-API Task mit den Rückruffunktionen addOnSuccessListener und addOnFailureListener. Diese entsprechen nicht den .NET-Codes Task<t> und await. Jede Bindungsschicht muss zwischen dem Callback-basierten Android-Async und der .NET TPL angepasst werden – eine nicht triviale Übersetzung, die von Community-Bindungen uneinheitlich gehandhabt wird.

Keine .NET Dependency-Injection-Integration. BarcodeScanning.getClient(options)ist ein statischer Factory-Aufruf, der ein Android-BarcodeScanner-Objekt zurückgibt. Es gibt keine .NET Schnittstelle zur Registrierung, kein IServiceCollection.AddBarcodeScanner(), keine Möglichkeit, es in ASP.NET Core Middleware oder Azure-Funktioneneinzufügen.

Keine Unterstützung für ASP.NET Core oder Azure Functions. ML Kit erfordert einen Android- oder iOS-Laufzeitkontext. Es kann nicht in einem Web-API-Prozess unter Linux, in einer Azure-Funktion, auf einem Windows Server oder in einem Docker-Container ausgeführt werden. Wenn Ihr Anwendungsfall die serverseitige Barcode-Verarbeitung betrifft – also einen REST-Endpunkt, der ein Bild akzeptiert und Barcode-Daten zurückgibt, eine Dokumentenverarbeitungspipeline oder einen Batch-Job – ist ML Kit unabhängig von der Verfügbarkeit von Bindungen architektonisch inkompatibel.

Nur Kamera- oder Frame-Eingabe – keine Datei, kein PDF. ML Kits InputImage kann aus einem Bitmap, einem ByteBuffer oder einem Datei-URI im Android-Dateisystem erstellt werden. Es gibt kein Konzept für die Verarbeitung eines PDF-Dokuments, das Durchlaufen von Seiten oder die Bearbeitung eines mehrseitigen TIFF-Dokuments. Die serverseitige Dokumentenverarbeitung fällt vollständig nicht in den Leistungsumfang des Produkts.

Abhängigkeit von Google Play-Diensten. Das geräteinterne ML-Modell läuft über Google Play-Dienste. Geräte ohne Google Play-Dienste – benutzerdefinierte Android-Builds, bestimmte Enterprise , Amazon Fire-Tablets – können die Standardkonfiguration des ML Kits nicht verwenden. Die Option "bundled" (com.google.mlkit:barcode-scanning-bundled) umgeht dieses Problem, erhöht aber die APK-Größe erheblich.

Portierung des Android ML Kit-Codes nach .NET

Wenn Sie eine bestehende Android-App mit ML Kit-Barcode-Scanning haben und diese auf .NET MAUI oder .NET 9 portieren, finden Sie hier die Übersetzung. Der Kotlin-Code verwendet das Callback-Muster von ML Kit; Der C#-Code verwendet die synchrone API von IronBarcode.

// Android Kotlin: ML Kit
val options = BarcodeScannerOptions.Builder()
    .setBarcodeFormats(Barcode.FORMAT_QR_CODE, Barcode.FORMAT_CODE_128)
    .build()
val scanner = BarcodeScanning.getClient(options)
val inputImage = InputImage.fromFilePath(context, uri)
scanner.process(inputImage)
    .addOnSuccessListener { barcodes ->
        for (barcode in barcodes) {
            val rawValue = barcode.rawValue
            val format = barcode.format
        }
    }
    .addOnFailureListener { e -> Log.e("MLKit", e.message ?: "") }
// .NET C#: IronBarcode
// NuGet: dotnet add package IronBarcode
using IronBarCode;

var results = BarcodeReader.Read("captured-image.jpg");
foreach (var barcode in results)
{
    Console.WriteLine($"{barcode.Format}: {barcode.Value}");
}
// .NET C#: IronBarcode
// NuGet: dotnet add package IronBarcode
using IronBarCode;

var results = BarcodeReader.Read("captured-image.jpg");
foreach (var barcode in results)
{
    Console.WriteLine($"{barcode.Format}: {barcode.Value}");
}
Imports IronBarCode

Dim results = BarcodeReader.Read("captured-image.jpg")
For Each barcode In results
    Console.WriteLine($"{barcode.Format}: {barcode.Value}")
Next
$vbLabelText   $csharpLabel

Der strukturelle Unterschied geht über die Syntax hinaus. Die ML Kit-Version richtet ein Scanner-Objekt ein, konstruiert ein InputImage, ruft scanner.process() auf und registriert Erfolgs- und Fehler-Callbacks. Wenn Sie das Ergebnis benötigen, bevor Sie fortfahren, müssen Sie die Callback-Ausführung mit dem Rest Ihrer Logik koordinieren – typischerweise durch ein CountDownLatch in Java oder Coroutinen in Kotlin.

IronBarcode's BarcodeReader.Read() gibt eine Ergebnissammlung synchron zurück. Du wiederholst es sofort. Es gibt keine Callback-Registrierung, keine Thread-Synchronisierung und kein separates Scanner-Objekt, das verwaltet werden muss.

Für Teams, die Android-Code portieren, sieht die Musterübersetzung für Szenarien mit mehreren Barcodes folgendermaßen aus:

// .NET C#: IronBarcode — reading multiple barcodes with options
using IronBarCode;

var options = new BarcodeReaderOptions
{
    Speed = ReadingSpeed.Balanced,
    ExpectMultipleBarcodes = true,
    ExpectedBarcodeTypes = BarcodeEncoding.QRCode | BarcodeEncoding.Code128
};

var results = BarcodeReader.Read("image.jpg", options);
foreach (var barcode in results)
{
    Console.WriteLine($"Format: {barcode.Format}, Value: {barcode.Value}");
}
// .NET C#: IronBarcode — reading multiple barcodes with options
using IronBarCode;

var options = new BarcodeReaderOptions
{
    Speed = ReadingSpeed.Balanced,
    ExpectMultipleBarcodes = true,
    ExpectedBarcodeTypes = BarcodeEncoding.QRCode | BarcodeEncoding.Code128
};

var results = BarcodeReader.Read("image.jpg", options);
foreach (var barcode in results)
{
    Console.WriteLine($"Format: {barcode.Format}, Value: {barcode.Value}");
}
Imports IronBarCode

Dim options As New BarcodeReaderOptions With {
    .Speed = ReadingSpeed.Balanced,
    .ExpectMultipleBarcodes = True,
    .ExpectedBarcodeTypes = BarcodeEncoding.QRCode Or BarcodeEncoding.Code128
}

Dim results = BarcodeReader.Read("image.jpg", options)
For Each barcode In results
    Console.WriteLine($"Format: {barcode.Format}, Value: {barcode.Value}")
Next
$vbLabelText   $csharpLabel

Das Flag ExpectedBarcodeTypes entspricht dem Flag setBarcodeFormats() von ML Kit. Durch die Einstellung wird die Suche eingeschränkt und die Leistung verbessert. Im Gegensatz zu ML Kit wird der Lesevorgang jedoch nicht unterbrochen, wenn die Einstellung nicht vorgenommen wird – IronBarcode versucht dann, alle unterstützten Formate zu lesen.

Vergleich der Formatabdeckung

Beide Tools decken die gängigen 2D- und 1D-Formate ab. Die Überschneidung ist beträchtlich.

Format ML-Kit (Android) IronBarcode
QR-Code Ja Ja
EAN-13 Ja Ja
EAN-8 Ja Ja
UPC-A Ja Ja
UPC-E Ja Ja
Code 128 Ja Ja
Code 39 Ja Ja
Code 93 Ja Ja
Codabar Ja Ja
ITF Ja Ja
PDF417 Ja Ja
Datenmatrix Ja Ja
aztekisch Ja Ja
Code 11 Nein Ja
MSI Plessey Nein Ja
Pharmacode Nein Ja
Interleaved 2 von 5 Über ITF Ja
RSS-14 / GS1 Databar Nein Ja
Mikro-QR Nein Ja
MaxiCode Nein Ja

IronBarcode unterstützt über 50 Kodierungstypen sowohl beim Lesen als auch beim Generieren. Die Formatliste von ML Kit ist auf die von Google mit dem Modell mitgelieferten Formate festgelegt – es können keine benutzerdefinierten Symbologien hinzugefügt werden.

Was IronBarcode hinzufügt

Über das Lesen hinaus deckt IronBarcode den gesamten Barcode-Workflow ab:

Generierung. ML Kit verfügt über keine Generierungs-API – es liest Barcodes, erstellt sie aber nicht. IronBarcode generiert Daten in allen unterstützten Formaten, darunter PNG, JPEG, SVG, HTML oder Binärdaten.

// Generate a Code 128barcode to file
BarcodeWriter.CreateBarcode("SHIP-20240312-7834", BarcodeEncoding.Code128)
    .SaveAsPng("shipping-label.png");
// Generate a Code 128barcode to file
BarcodeWriter.CreateBarcode("SHIP-20240312-7834", BarcodeEncoding.Code128)
    .SaveAsPng("shipping-label.png");
' Generate a Code 128 barcode to file
BarcodeWriter.CreateBarcode("SHIP-20240312-7834", BarcodeEncoding.Code128) _
    .SaveAsPng("shipping-label.png")
$vbLabelText   $csharpLabel

QR-Code-Anpassung. QRCodeWriter unterstützt das Einbetten von Logos, Farbänderungen und Fehlerkorrekturstufen – Funktionen, die es in ML Kit nicht gibt, da ML Kit keine QR-Codes generiert.

// QR code with embedded logo and custom color
QRCodeWriter.CreateQrCode("https://example.com/product/4821", 500)
    .AddBrandLogo("company-logo.png")
    .ChangeBarCodeColor(System.Drawing.Color.DarkBlue)
    .SaveAsPng("product-qr.png");
// QR code with embedded logo and custom color
QRCodeWriter.CreateQrCode("https://example.com/product/4821", 500)
    .AddBrandLogo("company-logo.png")
    .ChangeBarCodeColor(System.Drawing.Color.DarkBlue)
    .SaveAsPng("product-qr.png");
' QR code with embedded logo and custom color
QRCodeWriter.CreateQrCode("https://example.com/product/4821", 500) _
    .AddBrandLogo("company-logo.png") _
    .ChangeBarCodeColor(System.Drawing.Color.DarkBlue) _
    .SaveAsPng("product-qr.png")
$vbLabelText   $csharpLabel

PDF-Verarbeitung. BarcodeReader.Read("document.pdf") liest Barcodes von jeder Seite einer PDF-Datei nativ. Kein Bildextraktionsschritt, keine seitenweise Schleife mit einer separaten PDF-Bibliothek – es verarbeitet PDFs direkt.

// Read all barcodes from every page of a PDF
var results = BarcodeReader.Read("invoice-batch.pdf");
foreach (var barcode in results)
{
    Console.WriteLine($"Page {barcode.PageNumber}: {barcode.Value}");
}
// Read all barcodes from every page of a PDF
var results = BarcodeReader.Read("invoice-batch.pdf");
foreach (var barcode in results)
{
    Console.WriteLine($"Page {barcode.PageNumber}: {barcode.Value}");
}
Imports System

' Read all barcodes from every page of a PDF
Dim results = BarcodeReader.Read("invoice-batch.pdf")
For Each barcode In results
    Console.WriteLine($"Page {barcode.PageNumber}: {barcode.Value}")
Next
$vbLabelText   $csharpLabel

Serverseitig und in der Cloud. IronBarcode läuft unter Windows, Linux, macOS, Docker, Azure-Funktionenund AWS Lambda. Es werden keine Google Play-Dienste, keine Kamera und keine mobile Laufzeitumgebung benötigt.

Binäre Ausgabe. .ToPngBinaryData() gibt direkt ein byte[] zurück – nützlich für APIs, die Barcode-Bilder als HTTP-Antworten zurückgeben, ohne sie auf die Festplatte zu schreiben.

// Generate barcode and return as byte array (e.g., in a web API)
byte[] barcodeBytes = BarcodeWriter.CreateBarcode("ORDER-8821", BarcodeEncoding.QRCode)
    .ToPngBinaryData();
// Generate barcode and return as byte array (e.g., in a web API)
byte[] barcodeBytes = BarcodeWriter.CreateBarcode("ORDER-8821", BarcodeEncoding.QRCode)
    .ToPngBinaryData();
' Generate barcode and return as byte array (e.g., in a web API)
Dim barcodeBytes As Byte() = BarcodeWriter.CreateBarcode("ORDER-8821", BarcodeEncoding.QRCode) _
    .ToPngBinaryData()
$vbLabelText   $csharpLabel

Funktionsvergleich

Feature Google ML Kit BarCode IronBarcode
.NET / C# API Keine (kein NuGet Paket) Ja — using IronBarCode;
NuGet-Paket Keine IronBarcode
Barcode-Lesung Ja (nur Android/iOS) Ja (alle Plattformen)
Barcode-Generierung Nein Ja (über 50 Formate)
QR-Code-Generierung Nein Ja
QR-Logo-Einbettung Nein Ja
PDF-Eingabeunterstützung Nein Ja (Muttersprachler)
Dateieingabe (PNG/JPEG) Ja (über InputImage-URI) Ja
Kamera-/Bildeingabe Ja (primärer Anwendungsfall) Über eine Bilddatei
Serverseitige Verarbeitung Nein Ja
ASP.NET Core Unterstützung Nein Ja
Azure-Funktionen Nein Ja
Docker/Linux Nein Ja
Windows-App-Unterstützung Nein (nur Android/iOS) Ja
Google Play-Dienste abhängig. Ja (Standardmodell) Nein
Firebase-Abhängigkeit (iOS) Ja Nein
Async/await C#-API Nein Synchron (passt zum .NET -Modell)
Mehrere Barcodes in einem Bild Ja Ja
Community .NET -Bindung Inoffiziell, instabil Nicht verfügbar (native .NET)
Preisgestaltung Kostenlos (als Teil von Google Play) Ab 749 $ (dauerhaft)

API-Konzeptmapping

Da es keine offizielle .NET ML Kit API gibt, ist diese Zuordnung konzeptionell – sie zeigt die Absicht jeder ML Kit-Operation und das IronBarcode Äquivalent.

ML Kit (Kotlin/Java-Konzept) IronBarcode (.NET C#)
BarcodeScannerOptions.Builder() new BarcodeReaderOptions { }
.setBarcodeFormats(FORMAT_QR_CODE) ExpectedBarcodeTypes = BarcodeEncoding.QRCode
BarcodeScanning.getClient(options) Statisch – kein Scannerobjekt erforderlich
InputImage.fromFilePath(context, uri) Dateipfadzeichenfolge an BarcodeReader.Read() übergeben
InputImage.fromBitmap(bitmap, rotation) BarcodeReader.Read(stream) oder Byte-Array-Überladung
scanner.process(inputImage) BarcodeReader.Read(path, options)
.addOnSuccessListener { barcodes -> } Rückgabewert von Read() — direkt iterieren
.addOnFailureListener { e -> } Standard try/catch
barcode.rawValue barcode.Value
barcode.format barcode.Format
barcode.boundingBox barcode.BarcodeImage (Regionsdaten)
Barcode.FORMAT_QR_CODE BarcodeEncoding.QRCode
Barcode.FORMAT_CODE_128 BarcodeEncoding.Code128
Keine Generierungs-API BarcodeWriter.CreateBarcode()
Keine Generierungs-API QRCodeWriter.CreateQrCode()
Speed / Modellauswahl ReadingSpeed.Balanced / .Faster / .Detailed

Wann sollte man IronBarcode in Betracht ziehen?

Portierung einer Android-App nach .NET MAUI oder .NET 9. Wenn Ihre Android-App ML Kit zum Scannen von Barcodes verwendet und Sie ein .NET Äquivalent erstellen, ist IronBarcode das naheliegende Ziel. Die Konzeptübersetzung ist unkompliziert – eine Datei lesen, ein Ergebnis erhalten, Werte iterieren.

Serverseitige Barcode-Verarbeitung. Jedes Szenario, das einen HTTP-Endpunkt zum Scannen von Barcodes, einen Hintergrundprozess zur Verarbeitung hochgeladener Bilder oder einen Dokumentenworkflow zum Extrahieren von Codes aus PDFs umfasst. ML Kit kann an keiner dieser Veranstaltungen teilnehmen.

Windows-Desktopanwendungen. WinForms, WPF oder .NET MAUI unter Windows. ML Kit läuft überhaupt nicht unter Windows.

Umgebungen ohne Google Play-Dienste. Wenn Ihre Android-Bereitstellung Geräte umfasst, die keine Google Play-Dienste besitzen – Enterprise , benutzerdefinierte AOSP-Builds, Amazon Fire-Geräte – ist das Standard-ML-Kit-Modell nicht verfügbar. IronBarcode hat keine solche Abhängigkeit.

Generierung und gleichzeitiges Lesen. Wenn Sie sowohl Barcodes generieren als auch lesen müssen – beispielsweise zum Drucken von Versandetiketten und zur Überprüfung von Scans –, bietet IronBarcode beides in derselben Bibliothek. ML Kit übernimmt weder die Generierung noch das serverseitige Lesen.

Bereitstellung in Azure oder AWS. Azure Functions, Azure App Service unter Linux, AWS Lambda – keine dieser Plattformen kann ML Kit hosten. IronBarcode zielt auf sie alle ab.

Lizenzierung und Preise

Google ML Kit Barcode Scanning ist kostenlos für Android- und iOS-Apps. Es fallen keine Gebühren pro Scan an und es ist keine kommerzielle Lizenz erforderlich. Dieses Preismodell ist im vorgesehenen Kontext sinnvoll – einer nativen mobilen Bibliothek, die mit Google Play-Diensten gebündelt ist.

IronBarcode ist eine kommerzielle .NET Bibliothek mit unbefristeten Lizenzen:

  • Lite: 749 $ — 1 Entwickler, 1 Projektstandort
  • Plus: 1.499 $ – bis zu 3 Entwickler
  • Professional: 2.999 $ – bis zu 10 Entwickler
  • Unbegrenzt: 5.999 $ — unbegrenzte Entwickler

Eine kostenlose Testversion ohne zeitliche Begrenzung ist verfügbar; Die Testwasserzeichen erzeugten Barcodes. Für Teams, die bereits für Serverinfrastruktur zur Dokumentenverarbeitung bezahlen, sind die Lizenzkosten in der Regel nur ein Bruchteil des Entwicklungsaufwands, der für die Wartung einer inoffiziellen ML Kit-Anbindung erforderlich ist.

Abschluss

Google ML Kit Barcode Scanning ist eine gut entwickelte Bibliothek, die genau das tut, wofür sie entwickelt wurde: Barcodes schnell und präzise auf Android- und iOS-Geräten scannen. Der Vergleich mit IronBarcode dreht sich weniger darum, welche Bibliothek besser ist, sondern vielmehr darum, welche Bibliothek in dem Kontext existiert, in dem man sie benötigt.

Wenn Sie Kotlin für Android entwickeln und mit einer Kamera scannen, ist ML Kit eine ausgezeichnete Wahl. Wenn Sie hingegen C# für .NET entwickeln – sei es für eine Web-API, einen Dokumentenverarbeitungsdienst, eine Windows-Anwendung, eine Cloud-Funktion oder eine plattformübergreifende MAUI-App – bietet Google ML Kit keine passende Lösung. Es gibt kein NuGet Paket, keine C#-API und keinen von Google unterstützten Weg zur Verwendung in verwaltetem Code. IronBarcode ist eine native .NET Bibliothek, die sowohl das Lesen als auch das Generieren von Barcodes auf allen von .NET unterstützten Plattformen abdeckt.

Häufig gestellte Fragen

Was ist Google ML Kit BarCode Scanning?

Google ML Kit Barcode Scanning ist eine .NET Barcode-Bibliothek zum Erzeugen und Lesen von Barcodes in C#-Anwendungen. Sie ist eine von mehreren Alternativen, die Entwickler bei der Auswahl einer Barcode-Lösung für .NET-Projekte in Betracht ziehen.

Was sind die Hauptunterschiede zwischen Google ML Kit Barcode Scanning und IronBarcode?

IronBarcode verwendet eine statische, zustandslose API, die keine Instanzverwaltung erfordert, während Google ML Kit Barcode Scanning in der Regel eine Instanzerstellung und -konfiguration vor der Verwendung erfordert. IronBarcode bietet außerdem native PDF-Unterstützung, automatische Formaterkennung und Single-Key-Lizenzierung in allen Umgebungen.

Ist IronBarcode einfacher zu lizenzieren als Google ML Kit Barcode Scanning?

IronBarcode verwendet einen einzigen Lizenzschlüssel, der sowohl die Entwicklungs- als auch die Produktionsbereitstellung abdeckt. Dies vereinfacht CI/CD-Pipelines und Docker-Konfigurationen im Vergleich zu Lizenzierungssystemen, die SDK-Schlüssel von Laufzeitschlüsseln trennen.

Unterstützt IronBarcode alle Barcode-Formate, die Google ML Kit Barcode Scanning unterstützt?

IronBarcode unterstützt über 30 Barcode-Symbologien, darunter QR Code, Code 128, Code 39, DataMatrix, PDF417, Aztec, EAN-13, UPC-A, GS1 und viele mehr. Die automatische Formaterkennung bedeutet, dass keine explizite Formataufzählung erforderlich ist.

Unterstützt IronBarcode das native Lesen von PDF-Barcodes?

Ja, IronBarcode liest Barcodes direkt aus PDF-Dateien mit BarcodeReader.Read("document.pdf"), ohne dass eine separate PDF-Rendering-Bibliothek erforderlich ist. Die seitenweisen Ergebnisse umfassen Seitenzahl, Barcodeformat, Wert und Konfidenzwert.

Wie handhabt IronBarcode die Stapelverarbeitung im Vergleich zum Google ML Kit Barcode Scanning?

Die statischen Methoden von IronBarcode sind zustandslos und natürlich thread-sicher, was die direkte Verwendung von Parallel.ForEach ohne Instanzverwaltung pro Thread ermöglicht. Es gibt auf keiner Preisstufe eine Obergrenze für den Durchsatz.

Welche .NET Versionen werden von IronBarcode unterstützt?

IronBarcode unterstützt .NET Framework 4.6.2+, .NET Core 3.1 und .NET 5, 6, 7, 8 und 9 in einem einzigen NuGet-Paket. Zu den Zielplattformen gehören Windows x64/x86, Linux x64 und macOS x64/ARM.

Wie installiere ich IronBarcode in einem .NET-Projekt?

Installieren Sie IronBarcode über NuGet: Führen Sie "Install-Package IronBarCode" in der Paketmanager-Konsole oder "dotnet add package IronBarCode" in der CLI aus. Es sind keine zusätzlichen SDK-Installationsprogramme oder Laufzeitdateien erforderlich.

Kann ich IronBarcode vor dem Kauf testen, im Gegensatz zu Google ML Kit?

Ja, der Testmodus von IronBarcode liefert vollständige dekodierte Barcodewerte - nur die erzeugten Ausgabebilder erhalten ein Wasserzeichen. Sie können die Lesegenauigkeit an Ihren eigenen Dokumenten testen, bevor Sie sich zum Kauf verpflichten.

Was ist der Preisunterschied zwischen Google ML Kit Barcode Scanning und IronBarcode?

Die Preise für IronBarcode beginnen bei 749 US-Dollar für eine unbefristete Einzelentwicklerlizenz für Entwicklung und Produktion. Preisdetails und Volumenoptionen sind auf der IronBarcode-Lizenzierungsseite verfügbar. Es ist keine separate Runtime-Lizenz erforderlich.

Ist es einfach, von Google ML Kit Barcode Scanning zu IronBarcode zu migrieren?

Bei der Migration von Google ML Kit Barcode Scanning zu IronBarcode geht es in erster Linie darum, instanzbasierte API-Aufrufe durch die statischen Methoden von IronBarcode zu ersetzen, Lizenzierungsklauseln zu entfernen und die Namen der Ergebniseigenschaften zu aktualisieren. Bei den meisten Migrationen wird eher Code reduziert als hinzugefügt.

Kann IronBarcode QR-Codes mit Logos generieren?

Ja. QRCodeWriter.CreateQrCode().AddBrandLogo("logo.png") bettet ein Markenbild nativ in einen QR-Code mit konfigurierbarer Fehlerkorrektur ein. Farbige QR-Codes werden auch über ChangeBarCodeColor() unterstützt.

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

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