Passer au contenu du pied de page
COMPARER à D'AUTRES COMPOSANTS

Google ML Kit Barcode Scanning vs IronBarcode : Comparaison de la bibliothèque de codes-barres C#

La fonction de lecture de codes-barres de Google ML Kit est vraiment impressionnante sur Android. Il alimente Google Lens, gère les codes endommagés et partiellement masqués, fonctionne sur l'appareil sans appel réseau et prend en charge un large éventail de formats 1D et 2D. Lorsque les développeurs .NET découvrent cela dans une comparaison de bibliothèques de codes-barres, ces faits sont exacts. Ce que les articles comparatifs omettent souvent, c'est que ML Kit ne possède ni SDK .NET , ni package NuGet , ni API C#. Cet article s'adresse aux développeurs qui ont trouvé ML Kit dans une liste et qui ont besoin de comprendre ce que signifie concrètement " utiliser ML Kit dans un projet .NET " — et à quoi ressemble l'équivalent en code managé.

Qu'est-ce que la lecture de codes-barres avec Google ML Kit ?

Google ML Kit Barcode Scanning est une bibliothèque mobile native. Il n'est pas possible de contourner cette limitation ; Il s'agit de la conception du produit. Le kit ML est disponible en deux versions :

  • Android: Distribué via Google Maven en tant que com.google.mlkit:barcode-scanning (Kotlin/Java). Requiert Google Play Services sur l'appareil cible. Traite les objets @InputImage construits à partir d'images de caméra, d'URI de fichiers ou de bitmaps.
  • iOS: Distribué via CocoaPods en tant que GoogleMLKit/BarcodeScanning, avec une dépendance Firebase. Utilise Swift ou Objective-C.

Il n'y a pas de dotnet add package google-mlkit-barcode. Il n'y a pas de using Google.MLKit.BarcodeScanning;. Google ne publie pas de liaison .NET pour ML Kit.

Les liaisons Xamarin maintenues par la communauté ont existé à différentes époques, mais elles présentent un problème constant : ML Kit met fréquemment à jour ses SDK Android et iOS, et les projets de liaison maintenus par des individus ou de petites équipes ont tendance à prendre du retard ou à cesser complètement de fonctionner lorsque l'API sous-jacente change. En 2026, il n'existe aucun package NuGet .NET prêt pour la production et activement maintenu qui encapsule le lecteur de codes-barres de ML Kit.

Ce que ML Kit fait bien

Comprendre pourquoi ML Kit apparaît dans les comparaisons de codes-barres est un contexte utile. Sur Android natif :

  • Inférence sur l'appareil : aucun aller-retour avec le serveur. Le modèle ML Kit s'exécute localement à l'aide des services Google Play, ce qui garantit une faible latence et aucune dépendance au réseau lors de l'analyse.
  • Tolérance aux dommages : Le modèle ML gère mieux les codes-barres endommagés, partiellement masqués ou à faible résolution que de nombreux décodeurs basés sur un seuil. Il s'agit là d'un véritable atout pour les applications grand public qui scannent des codes-barres réels.
  • Intégration de Google Lens : le scanner de ML Kit utilise la même architecture que celle qui alimente la détection des codes-barres de Google Lens. Il s'agit d'un signal de haute qualité.
  • Formats compatibles sur mobile : les codes QR, EAN-13, EAN-8, Code 128, Code 39, Code 93, Codabar, ITF, PDF417, Data Matrix, Aztèque et UPC-A/UPC-E sont tous pris en charge nativement.
  • Configuration nulle : un extrait de code Kotlin de trois lignes peut produire un scanner fonctionnel sans réglage des seuils ni choix de stratégie de décodage.

Ce sont des atouts légitimes. Le problème pour les développeurs .NET n'est pas que ML Kit soit mauvais, mais qu'il ne leur soit pas accessible sans un travail considérable.

La réalité du développement .NET

Lorsqu'un développeur .NET a besoin de scanner des codes-barres, le chemin d'accès au ML Kit ressemble concrètement à ceci :

<ml Kit utilise l'API Task d'Android avec des rappels addOnSuccessListener et addOnFailureListener. Ceux-ci ne correspondent pas aux Task<t> et await de .NET. Toute couche de liaison doit s'adapter entre l'asynchrone Android basé sur les rappels et la bibliothèque TPL de .NET — une traduction non triviale que les liaisons communautaires gèrent de manière incohérente.

Pas d'intégration d'injection de dépendance .NET. BarcodeScanning.getClient(options)est un appel d'usine statique qui renvoie un objet BarcodeScanner Android. Il n'y a pas d'interface .NET à enregistrer, pas de IServiceCollection.AddBarcodeScanner(), pas de moyen de l'injecter dans un middleware ASP.NET Core ou Azure Functions.

Aucune prise en charge ASP.NET Core ni d'Azure Functions. ML Kit nécessite un environnement d'exécution Android ou iOS. Il ne peut pas s'exécuter dans un processus d'API Web sous Linux, dans une fonction Azure, sur un serveur Windows ou dans un conteneur Docker. Si votre cas d'utilisation concerne le traitement des codes-barres côté serveur (un point de terminaison REST qui accepte une image et renvoie des données de code-barres, un pipeline de traitement de documents, un traitement par lots), ML Kit est architecturalement incompatible, quelle que soit la disponibilité des liaisons.

<La InputImage du ML Kit peut être construite à partir d'une Bitmap, d'une ByteBuffer, ou d'une URI de fichier sur le système de fichiers Android. Il n'existe aucun concept permettant de traiter un document PDF, d'itérer sur les pages ou de gérer un fichier TIFF multipage. Le traitement des documents côté serveur est totalement extérieur au périmètre du produit.

Dépendance aux services Google Play. Le modèle d'apprentissage automatique embarqué s'exécute via les services Google Play. Les appareils dépourvus de services Google Play (versions Android personnalisées, certains appareils Enterprise , tablettes Amazon Fire) ne peuvent pas utiliser la configuration ML Kit par défaut. L'option "bundled" (com.google.mlkit:barcode-scanning-bundled) permet de contourner ce problème, mais augmente considérablement la taille de l'APK.

Portage du code Android ML Kit vers .NET

Si vous disposez d'une application Android existante avec la lecture de codes-barres ML Kit et que vous la portez vers .NET MAUI ou .NET 9, voici la traduction. Le code Kotlin utilise le modèle de rappel de ML Kit ; Le code C# utilise l'API synchrone d'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

La différence structurelle dépasse la simple syntaxe. La version ML Kit configure un objet scanner, construit un InputImage, appelle le scanner.process(), et enregistre les rappels de succès et d'échec. Si vous avez besoin du résultat avant de poursuivre, vous devez coordonner l'exécution du callback avec le reste de votre logique - généralement par le biais d'un CountDownLatch en Java ou de coroutines en Kotlin.

La fonction BarcodeReader.Read() d'IronBarcode renvoie une collection de résultats de manière synchrone. Vous l'itérez immédiatement. Il n'y a pas d'enregistrement de rappel, pas de synchronisation de threads, pas d'objet scanner séparé à gérer.

Pour les équipes qui portent du code Android, la traduction des modèles pour les scénarios à plusieurs codes-barres ressemble à ceci :

// .NET C#: Code-barres 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#: Code-barres 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

Le drapeau ExpectedBarcodeTypes est l'équivalent du drapeau setBarcodeFormats() du ML Kit. Le paramétrer restreint la recherche et améliore les performances, mais contrairement à ML Kit, le fait de ne pas le paramétrer n'interrompt pas la lecture : Code-barres IronBarcode tentera tous les formats pris en charge.

Comparaison de la couverture des formats

Ces deux outils couvrent les formats 2D et 1D les plus courants. Le chevauchement est important.

Format Kit ML (Android) Code-barres IronBarcode
Code QR Oui Oui
EAN-13 Oui Oui
EAN-8 Oui Oui
UPC-A Oui Oui
UPC-E Oui Oui
Code 128 Oui Oui
Code 39 Oui Oui
Code 93 Oui Oui
Codabar Oui Oui
ITF Oui Oui
PDF417 Oui Oui
Matrice de données Oui Oui
Aztèque Oui Oui
Code 11 Non Oui
MSI Plessey Non Oui
Pharmacode Non Oui
Intercalé 2 sur 5 Via ITF Oui
Barre de données RSS-14 / GS1 Non Oui
Micro QR Non Oui
MaxiCode Non Oui

IronBarcode prend en charge plus de 50 types d'encodage, aussi bien en lecture qu'en génération. La liste des formats de ML Kit est fixe et correspond à celle fournie par Google avec le modèle ; vous ne pouvez pas ajouter de symbologies personnalisées.

Qu'apporte IronBarcode

Au-delà de la simple lecture, Code-barres IronBarcode couvre l'intégralité du flux de travail des codes-barres :

Génération. ML Kit ne possède aucune API de génération ; il lit les codes-barres, il ne les crée pas. Code-barres IronBarcode génère tous les formats pris en charge aux formats PNG, JPEG, SVG, HTML ou données binaires.

// 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

Personnalisation des codes QR. QRCodeWriter prend en charge l'intégration de logos, les modifications de couleurs et les niveaux de correction d'erreurs — des fonctionnalités qui n'ont pas d'équivalent dans ML Kit, car ML Kit ne génère rien.

// 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

Traitement des PDF. BarcodeReader.Read("document.pdf") lit les codes-barres de chaque page d'un PDF en mode natif. Aucune étape d'extraction d'image, aucune boucle page par page avec une bibliothèque PDF séparée : il gère directement les PDF.

// 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

Solution côté serveur et cloud. Code-barres IronBarcode fonctionne sous Windows, Linux, macOS, Docker, Fonctions Azureet AWS Lambda. Aucune exigence concernant les services Google Play, aucune caméra, aucun environnement d'exécution mobile.

Sortie binaire. .ToPngBinaryData() renvoie directement un byte[] - utile pour les API qui renvoient des images de codes-barres sous forme de réponses HTTP sans écrire sur le disque.

// 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

Comparaison des fonctionnalités

Fonction Code-barres Google ML Kit Code-barres IronBarcode
API .NET / C# Aucun (aucun package NuGet ) Oui - using IronBarCode;
Paquet NuGet Aucun IronBarcode
Lecture de codes-barres Oui (Android/iOS uniquement) Oui (toutes les plateformes)
génération de codes-barres Non Oui (plus de 50 formats)
génération de code QR Non Oui
Intégration de logo QR Non Oui
Prise en charge de la saisie PDF Non Oui (natif)
Fichier d'entrée (PNG/JPEG) Oui (via l'URI InputImage) Oui
Entrée caméra/image Oui (cas d'utilisation principal) Via fichier image
Traitement côté serveur Non Oui
Prise en charge ASP.NET Core Non Oui
Fonctions Azure Non Oui
Docker / Linux Non Oui
Prise en charge des applications Windows Non (Android/iOS uniquement) Oui
Département des services Google Play Oui (modèle standard) Non
Dépendance Firebase (iOS) Oui Non
API C# asynchrone/attente Non Synchrone (compatible avec le modèle .NET )
Plusieurs codes-barres dans une seule image Oui Oui
Liaison .NET communautaire Non officiel, instable N/A (natif .NET)
Tarifs Gratuit (via Google Play) À partir de 749 $ perpétuel

Cartographie conceptuelle des API

Comme il n'existe pas d'API officielle .NET ML Kit, ce mappage est conceptuel : il illustre l'intention de chaque opération ML Kit et son équivalent Code-barres IronBarcode .

Kit de ML (concept Kotlin/Java) Code-barres IronBarcode pour .NET C#
BarcodeScannerOptions.Builder() new BarcodeReaderOptions { }
.setBarcodeFormats(FORMAT_QR_CODE) ExpectedBarcodeTypes = BarcodeEncoding.QRCode
BarcodeScanning.getClient(options) Statique — aucun objet scanner nécessaire
InputImage.fromFilePath(context, uri) Chaîne de chemin de fichier transmise à BarcodeReader.Read()
InputImage.fromBitmap(bitmap, rotation) BarcodeReader.Read(stream) ou surcharge de tableau d'octets
scanner.process(inputImage) BarcodeReader.Read(path, options)
.addOnSuccessListener { barcodes -> } Valeur de retour de Read() - itérer directement
.addOnFailureListener { e -> } try/catch standard
barcode.rawValue barcode.Value
barcode.format barcode.Format
barcode.boundingBox barcode.BarcodeImage (données régionales)
Barcode.FORMAT_QR_CODE BarcodeEncoding.QRCode
Barcode.FORMAT_CODE_128 BarcodeEncoding.Code128
API sans génération BarcodeWriter.CreateBarcode()
API sans génération QRCodeWriter.CreateQrCode()
Speed / sélection de modèles ReadingSpeed.Balanced / .Faster / .Detailed

Quand envisager IronBarcode

Portage d'une application Android vers .NET MAUI ou .NET 9. Si votre application Android utilise ML Kit pour la lecture de codes-barres et que vous développez un équivalent .NET , Code-barres IronBarcode est la cible naturelle. La traduction du concept est simple : lire un fichier, obtenir un résultat, parcourir les valeurs.

Traitement des codes-barres côté serveur. Tout scénario impliquant un point de terminaison HTTP qui scanne des codes-barres, une tâche en arrière-plan traitant des images téléchargées ou un flux de travail documentaire qui extrait des codes à partir de PDF. ML Kit ne peut participer à aucune de ces activités.

Applications de bureau Windows. WinForms, WPF ou .NET MAUI sous Windows. ML Kit ne fonctionne pas du tout sous Windows.

Environnements sans services Google Play. Si votre déploiement Android inclut des appareils ne disposant pas des services Google Play (matériel Enterprise , versions AOSP personnalisées, appareils Amazon Fire), le modèle ML Kit standard n'est pas disponible. Code-barres IronBarcode ne présente pas une telle dépendance.

Génération et lecture simultanées. Si vous devez à la fois générer et lire des codes-barres (par exemple, pour imprimer des étiquettes d'expédition et vérifier les scans), Code-barres IronBarcode gère les deux dans une seule et même bibliothèque. ML Kit ne gère ni la génération ni la lecture côté serveur.

Déploiement sur Azure ou AWS. Azure Functions, Azure App Service sur Linux, AWS Lambda : aucun de ces services ne peut héberger ML Kit. Code-barres IronBarcode les cible tous.

Licences et Tarification

La fonctionnalité de lecture de codes-barres de Google ML Kit est gratuite pour les applications Android et iOS. Aucun frais n'est facturé par lecture et aucune licence commerciale n'est requise. Ce modèle de tarification est logique dans son contexte prévu : une bibliothèque mobile native intégrée aux services Google Play.

IronBarcode est une bibliothèque .NET commerciale avec des licences perpétuelles :

  • Lite: 749 $ — 1 développeur, 1 emplacement de projet
  • En Plus: 1 499 $ — jusqu'à 3 développeurs
  • Professional: 2 999 $ — jusqu'à 10 développeurs
  • Illimité : 5 999 $ — développeurs illimités

Un essai gratuit est disponible sans limite de temps ; Les filigranes d'essai ont généré des codes-barres. Pour les équipes qui paient déjà pour une infrastructure serveur afin de traiter des documents, le coût de la licence représente généralement une petite fraction de l'effort d'ingénierie nécessaire pour maintenir une liaison ML Kit non officielle.

Conclusion

Google ML Kit Barcode Scanning est une bibliothèque bien conçue qui fait exactement ce pour quoi elle a été conçue : scanner les codes-barres rapidement et avec précision sur les appareils Android et iOS. La comparaison avec Code-barres IronBarcode porte moins sur la qualité intrinsèque d'une bibliothèque que sur sa disponibilité dans le contexte où vous en avez besoin.

Si vous développez en Kotlin pour Android et utilisez la numérisation depuis un appareil photo, ML Kit est un excellent choix. En revanche, si vous développez en C# pour .NET (que ce soit pour une API web, un service de traitement de documents, une application Windows, une fonction cloud ou une application MAUI multiplateforme), Google ML Kit ne vous propose aucune solution. Il n'existe ni package NuGet , ni API C#, ni méthode prise en charge par Google pour l'utiliser dans du code managé. Code-barres IronBarcode est une bibliothèque .NET native qui couvre à la fois la lecture et la génération sur toutes les plateformes prises en charge par .NET .

Questions Fréquemment Posées

Qu'est-ce que Google ML Kit BarCode Scanning ?

Google ML Kit BarCode Scanning est une bibliothèque de codes-barres .NET permettant de générer et de lire des codes-barres dans des applications C#. C'est l'une des nombreuses alternatives que les développeurs évaluent lorsqu'ils choisissent une solution de code-barres pour les projets .NET.

Quelles sont les principales différences entre Google ML Kit Barcode Scanning et IronBarcode ?

IronBarcode utilise une API statique, sans état, ne nécessitant aucune gestion d'instance, tandis que Google ML Kit Barcode Scanning nécessite généralement la création et la configuration d'une instance avant utilisation. IronBarcode offre également une prise en charge native du format PDF, une détection automatique du format et une licence à clé unique dans tous les environnements.

IronBarcode est-il plus facile à licencier que Google ML Kit Barcode Scanning ?

IronBarcode utilise une clé de licence unique couvrant à la fois les déploiements de développement et de production. Cela simplifie les pipelines CI/CD et les configurations Docker par rapport aux systèmes de licence qui séparent les clés SDK des clés d'exécution.

IronBarcode prend-il en charge tous les formats de codes-barres que Google ML Kit Barcode Scanning prend en charge ?

IronBarcode prend en charge plus de 30 symbologies de codes-barres, notamment QR Code, Code 128, Code 39, DataMatrix, PDF417, Aztec, EAN-13, UPC-A, GS1, et bien d'autres encore. L'auto-détection du format signifie qu'aucune énumération explicite du format n'est nécessaire.

IronBarcode prend-il en charge la lecture de codes-barres PDF en mode natif ?

Oui. IronBarcode lit les codes-barres directement à partir de fichiers PDF en utilisant BarcodeReader.Read("document.pdf") sans nécessiter de bibliothèque de rendu PDF séparée. Les résultats par page comprennent le numéro de page, le format du code-barres, la valeur et le score de confiance.

Comment IronBarcode gère-t-il le traitement par lots par rapport à Google ML Kit Barcode Scanning ?

Les méthodes statiques d'IronBarcode sont sans état et naturellement à l'abri des threads, ce qui permet d'utiliser directement Parallel.ForEach sans gestion d'instance par thread. Il n'y a pas de plafond de débit, quel que soit le niveau de prix.

Quelles versions de .NET sont prises en charge par IronBarcode ?

IronBarcode prend en charge .NET Framework 4.6.2+, .NET Core 3.1 et .NET 5, 6, 7, 8 et 9 dans un seul package NuGet. Les plates-formes visées sont Windows x64/x86, Linux x64 et macOS x64/ARM.

Comment installer IronBarcode for .NET dans un projet .NET ?

Installez IronBarcode via NuGet : exécutez "Install-Package IronBarCode" dans la console du gestionnaire de paquets, ou "dotnet add package IronBarCode" dans le CLI. Aucun installateur SDK ou fichier d'exécution supplémentaire n'est nécessaire.

Puis-je évaluer IronBarcode avant de l'acheter, contrairement à Google ML Kit ?

Oui. Le mode d'essai d'IronBarcode renvoie des valeurs de code-barres décodées complètes - seules les images de sortie générées reçoivent un filigrane. Vous pouvez comparer la précision de lecture sur vos propres documents avant de vous engager dans un achat.

Quelle est la différence de prix entre Google ML Kit BarCode Scanning et IronBarcode ?

IronBarcode est proposé à partir de 749 dollars pour une licence perpétuelle pour un seul développeur couvrant le développement et la production. Les détails des prix et les options de volume sont disponibles sur la page de licence d'IronBarcode. Il n'est pas nécessaire de disposer d'une licence d'exécution distincte.

Est-il simple de migrer de Google ML Kit Barcode Scanning vers IronBarcode ?

La migration de Google ML Kit Barcode Scanning vers IronBarcode implique principalement le remplacement des appels d'API basés sur des instances par les méthodes statiques d'IronBarcode, la suppression du boilerplate de licence et la mise à jour des noms des propriétés des résultats. La plupart des migrations impliquent une réduction du code plutôt qu'un ajout.

IronBarcode génère-t-il des codes QR avec des logos ?

Oui. QRCodeWriter.CreateQrCode().AddBrandLogo("logo.png") incorpore une image de marque dans un code QR de manière native avec une correction d'erreur configurable. Les codes QR colorés sont également pris en charge via ChangeBarCodeColor().

Jordi Bardia
Ingénieur logiciel
Jordi est le plus compétent en Python, C# et C++, et lorsqu'il ne met pas à profit ses compétences chez Iron Software, il programme des jeux. Partageant les responsabilités des tests de produit, du développement de produit et de la recherche, Jordi apporte une immense valeur à l'amé...
Lire la suite

Équipe de soutien Iron

Nous sommes en ligne 24 heures sur 24, 5 jours sur 7.
Chat
Email
Appelez-moi