Saltar al pie de página
COMPARAR CON OTROS COMPONENTES

Google ML Kit Barcode Scanning vs IronBarcode: Comparación de bibliotecas de códigos de barras en C#

El escaneo de códigos de barras de Google ML Kit es realmente impresionante en Android. Permite el funcionamiento de Google Lens, gestiona códigos dañados y parcialmente ocultos, funciona en el dispositivo sin necesidad de conexión a la red y admite una amplia gama de formatos 1D y 2D. Cuando los desarrolladores de .NET se topan con esta información al comparar bibliotecas de códigos de barras, esos datos son correctos. Lo que suelen omitir los artículos comparativos es que ML Kit no tiene SDK .NET , ni paquete NuGet , ni API para C#. Este artículo está dirigido a desarrolladores que encontraron ML Kit en una lista y necesitan comprender qué significa realmente "usar ML Kit en un proyecto .NET " en la práctica, y cómo se ve el equivalente en código administrado.

¿Qué es el escaneo de códigos de barras de Google ML Kit?

Google ML Kit Barcode Scanning es una biblioteca nativa para dispositivos móviles. Esa no es una limitación que se pueda sortear; Es el diseño del producto. ML Kit se envía en dos sabores:

  • Android: Distribuido a través de Google Maven como com.google.mlkit:barcode-scanning (Kotlin/Java). Requiere Google Play Services en el dispositivo de destino. Procesa objetos InputImage construidos a partir de fotogramas de cámara, URI de archivo o mapas de bits.
  • iOS: Distribuido a través de CocoaPods como GoogleMLKit/BarcodeScanning, con una dependencia de Firebase. Utiliza Swift u Objective-C.

No hay dotnet add package google-mlkit-barcode. No hay using Google.MLKit.BarcodeScanning;. Google no publica una interfaz .NET para ML Kit.

Las bibliotecas de enlace de Xamarin mantenidas por la comunidad han existido en diversos momentos, pero tienen un problema constante: ML Kit actualiza con frecuencia sus SDK para Android e iOS, y los proyectos de enlace mantenidos por particulares o pequeños equipos tienden a quedarse atrás o a dejar de funcionar por completo cuando cambia la API subyacente. A fecha de 2026, no existe ningún paquete NuGet .NET , con mantenimiento activo y listo para producción, que integre el escáner de códigos de barras de ML Kit.

Lo que ML Kit hace bien

Comprender por qué ML Kit aparece en las comparaciones de códigos de barras proporciona un contexto útil. En Android nativo:

  • Inferencia en el dispositivo: Sin comunicación con el servidor. El modelo de ML Kit se ejecuta localmente mediante Google Play Services, lo que significa baja latencia y ninguna dependencia de la red en el momento del escaneo.
  • Tolerancia al daño: El modelo de aprendizaje automático maneja mejor los códigos de barras dañados, parcialmente ocultos o de baja resolución que muchos decodificadores basados ​​en umbrales. Esto supone un verdadero factor diferenciador para las aplicaciones de consumo que escanean códigos del mundo real.
  • Integración con Google Lens: El escáner de ML Kit utiliza la misma tecnología que la que permite la detección de códigos de barras de Google Lens. Esa es una señal de alta calidad.
  • Amplia gama de formatos en dispositivos móviles: se admiten de forma nativa los siguientes formatos: QR Code, EAN-13, EAN-8, Code 128, Code 39, Code 93, Codabar, ITF, PDF417, Data Matrix, azteca y UPC-A/UPC-E.
  • Configuración cero: Un fragmento de código Kotlin de tres líneas puede generar un escáner funcional sin necesidad de ajustar umbrales ni elegir una estrategia de decodificación.

Estas son fortalezas legítimas. El problema para los desarrolladores de .NET no es que ML Kit sea malo, sino que ML Kit no está disponible para ellos sin un trabajo considerable.

La realidad del desarrollo .NET

Cuando un desarrollador .NET necesita escanear códigos de barras, la ruta de ML Kit se ve así en la práctica:

No async/await C# API. ML Kit utiliza la API Task de Android con addOnSuccessListener y addOnFailureListener callbacks. No se corresponden con los códigos Task<t> y await de .NET. Cualquier capa de enlace debe adaptarse entre la programación asíncrona de Android basada en devoluciones de llamada y la TPL de .NET, una traducción compleja que los enlaces de la comunidad manejan de forma inconsistente.

Sin integración de inyección de dependencias .NET. BarcodeScanning.getClient(options)es una llamada a una fábrica estática que devuelve un objeto Android BarcodeScanner. No hay interfaz .NET que registrar, ni IServiceCollection.AddBarcodeScanner(), ni forma de inyectarlo en middleware ASP.NET Core o Azure Functions.

No es compatible con ASP.NET Core ni Azure Functions. ML Kit requiere un entorno de ejecución de Android o iOS. No se puede ejecutar en un proceso de API web en Linux, en una función de Azure, en Windows Server o en un contenedor Docker. Si su caso de uso es el procesamiento de códigos de barras del lado del servidor (un punto final REST que acepta una imagen y devuelve datos de códigos de barras, una canalización de procesamiento de documentos, un trabajo por lotes), ML Kit es arquitectónicamente incompatible, independientemente de la disponibilidad de cualquier enlace.

Sólo entrada de cámara o marco - sin archivo, sin PDF. El InputImage de ML Kit se puede construir a partir de un Bitmap, un ByteBuffer, o un URI de archivo en el sistema de archivos de Android. No existe el concepto de procesar un documento PDF, iterar páginas o manejar un archivo TIFF de varias páginas. El procesamiento de documentos en el servidor queda completamente fuera del alcance del producto.

Dependencia de los servicios de Google Play. El modelo de aprendizaje automático en el dispositivo se ejecuta a través de los servicios de Google Play. Los dispositivos que no cuentan con los Servicios de Google Play (versiones personalizadas de Android, ciertos dispositivos Enterprise , tabletas Amazon Fire) no pueden utilizar la configuración predeterminada de ML Kit. La opción del modelo "empaquetado" (com.google.mlkit:barcode-scanning-bundled) soluciona este problema, pero aumenta significativamente el tamaño del APK.

Portar el código de Android ML Kit a .NET

Si ya tienes una aplicación Android con escaneo de códigos de barras mediante ML Kit y la estás adaptando a .NET MAUI o .NET 9, aquí tienes la traducción. El código Kotlin utiliza el patrón de devolución de llamada de ML Kit; El código C# utiliza la API síncrona de 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 diferencia estructural va más allá de la sintaxis. La versión ML Kit configura un objeto escáner, construye un InputImage, llama al scanner.process(), y registra las llamadas de retorno de éxito y fracaso. Si necesitas el resultado antes de continuar, tienes que coordinar la ejecución del callback con el resto de tu lógica - típicamente a través de un CountDownLatch en Java o coroutines en Kotlin.

El BarcodeReader.Read() de IronBarcode devuelve una colección de resultados de forma sincrónica. Lo iteras inmediatamente. No hay registro de devolución de llamada, ni sincronización de subprocesos, ni objeto escáner independiente que gestionar.

Para los equipos que adaptan código de Android, la traducción de patrones para escenarios con múltiples códigos de barras se ve así:

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

El indicador ExpectedBarcodeTypes es el equivalente al setBarcodeFormats() de ML Kit. Configurar esta opción reduce el alcance de la búsqueda y mejora el rendimiento, pero a diferencia de ML Kit, dejarla sin configurar no interrumpe la lectura: IronBarcode intentará procesar todos los formatos compatibles.

Comparación de cobertura de formatos

Ambas herramientas son compatibles con los formatos 2D y 1D más comunes. La superposición es sustancial.

Formato Kit de aprendizaje automático (Android) IronBarcode
Código QR
EAN-13
EAN-8
UPC-A
UPC-E
Código 128
Código 39
Código 93
Codabar
ITF
PDF417
Matriz de datos
azteca
Código 11 No
MSI Plessey No
Código farmacéutico No
Intercalado 2 de 5 A través de la ITF
Barra de datos RSS-14 / GS1 No
Micro QR No
Código Maxi No

IronBarcode admite más de 50 tipos de codificación tanto para lectura como para generación. La lista de formatos de ML Kit está fija a la que Google incluye con el modelo; no se pueden añadir simbologías personalizadas.

Lo que añade IronBarcode

Además de la lectura, IronBarcode cubre todo el flujo de trabajo de los códigos de barras:

Generación. ML Kit no tiene ninguna API de generación; lee códigos de barras, no los crea. IronBarcode genera cualquier formato compatible a PNG, JPEG, SVG, HTML o datos binarios.

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

Personalización de códigos QR. QRCodeWriter admite la inserción de logotipos, cambios de color y niveles de corrección de errores; funciones que no tienen equivalente en ML Kit porque ML Kit no genera nada.

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

Procesamiento de PDF. BarcodeReader.Read("document.pdf") lee códigos de barras de cada página de un PDF de forma nativa. No requiere ningún paso de extracción de imágenes ni un bucle página por página con una biblioteca PDF independiente: gestiona los archivos PDF directamente.

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

En el servidor y en la nube. IronBarcode funciona en Windows, Linux, macOS, Docker, Funciones Azurey AWS Lambda. No requiere Google Play Services, ni cámara, ni entorno de ejecución móvil.

Salida binaria. .ToPngBinaryData() devuelve un byte[] directamente - útil para APIs que devuelven imágenes de códigos de barras como respuestas HTTP sin escribir en disco.

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

Comparación de características

Característica Código de barras de Google ML Kit IronBarcode
API .NET / C# Ninguno (no hay paquete NuGet ) Sí - using IronBarCode;
Paquete NuGet Ninguno IronBarcode
Lectura de códigos de barras Sí (solo para Android/iOS) Sí (todas las plataformas)
Generación de códigos de barras No Sí (más de 50 formatos)
Generación de código QR No
Inserción de logotipo QR No
Compatibilidad con entrada de PDF No Sí (nativo)
Entrada de archivos (PNG/JPEG) Sí (a través de la URI InputImage)
Entrada de cámara/fotograma Sí (caso de uso principal) Mediante archivo de imagen
Procesamiento del lado del servidor No
Compatibilidad con ASP.NET Core No
Funciones Azure No
Docker / Linux No
Compatibilidad con aplicaciones de Windows No (solo Android/iOS)
Departamento de Servicios de Google Play. Sí (modelo estándar) No
Dependencia de Firebase (iOS) No
API de C# asíncrona/await No Síncrono (compatible con el modelo .NET )
Múltiples códigos de barras en una sola imagen
Enlace .NET de la comunidad No oficial, inestable No disponible (nativo .NET)
Precios Gratis (como parte de Google Play) Desde $749 perpetuo

Mapeo de conceptos de API

Dado que no existe una API oficial de .NET ML Kit, esta correspondencia es conceptual: muestra la intención de cada operación de ML Kit y su equivalente en IronBarcode .

Kit de aprendizaje automático (concepto Kotlin/Java) IronBarcode (.NET C#)
BarcodeScannerOptions.Builder() new BarcodeReaderOptions { }
.setBarcodeFormats(FORMAT_QR_CODE) ExpectedBarcodeTypes = BarcodeEncoding.QRCode
BarcodeScanning.getClient(options) Estático: no se necesita ningún objeto de escáner.
InputImage.fromFilePath(context, uri) Cadena de ruta de archivo pasada a BarcodeReader.Read()
InputImage.fromBitmap(bitmap, rotation) BarcodeReader.Read(stream) o sobrecarga de matrices de bytes
scanner.process(inputImage) BarcodeReader.Read(path, options)
.addOnSuccessListener { barcodes -> } Valor de retorno de Read() - iterar directamente
.addOnFailureListener { e -> } try/catch estándar
barcode.rawValue barcode.Value
barcode.format barcode.Format
barcode.boundingBox barcode.BarcodeImage (datos de la región)
Barcode.FORMAT_QR_CODE BarcodeEncoding.QRCode
Barcode.FORMAT_CODE_128 BarcodeEncoding.Code128
API sin generación BarcodeWriter.CreateBarcode()
API sin generación QRCodeWriter.CreateQrCode()
Speed / selección de modelos ReadingSpeed.Balanced / .Faster / .Detailed

¿Cuándo considerar IronBarcode?

Migración de una aplicación Android a .NET MAUI o .NET 9. Si tu aplicación Android utiliza ML Kit para el escaneo de códigos de barras y estás creando una versión equivalente en .NET , IronBarcode es la opción natural. La traducción del concepto es sencilla: leer un archivo, obtener un resultado e iterar sobre los valores.

Procesamiento de códigos de barras en el servidor. Cualquier escenario que involucre un punto final HTTP que escanee códigos de barras, un proceso en segundo plano que procese imágenes cargadas o un flujo de trabajo de documentos que extraiga códigos de archivos PDF. ML Kit no puede participar en ninguna de estas actividades.

Aplicaciones de escritorio para Windows. WinForms, WPF o .NET MAUI en Windows. ML Kit no funciona en absoluto en Windows.

Entornos sin servicios de Google Play. Si su implementación de Android incluye dispositivos que no tienen servicios de Google Play (hardware Enterprise , compilaciones AOSP personalizadas, dispositivos Amazon Fire), el modelo estándar de ML Kit no está disponible. IronBarcode no tiene esa dependencia.

Generación simultánea a la lectura. Si necesita generar y leer códigos de barras (por ejemplo, imprimir etiquetas de envío y verificar escaneos), IronBarcode gestiona ambas funciones en la misma biblioteca. ML Kit no se encarga ni de la generación ni de la lectura en el servidor.

Implementación en Azure o AWS. Azure Functions, Azure App Service en Linux, AWS Lambda: ninguna de estas opciones puede alojar ML Kit. IronBarcode apunta a todos ellos.

Licencias y precios

La función de escaneo de códigos de barras de Google ML Kit es gratuita para aplicaciones de Android e iOS. No hay ningún cargo por escaneo ni se requiere licencia comercial. Ese modelo de precios tiene sentido en su contexto previsto: una biblioteca móvil nativa integrada con los servicios de Google Play.

IronBarcode es una biblioteca .NET comercial con licencias perpetuas:

  • Lite: $749 — 1 desarrollador, 1 ubicación del proyecto
  • Plus: $1,499 — hasta 3 desarrolladores
  • Professional: $2,999 — hasta 10 desarrolladores
  • Ilimitado: $5,999 — desarrolladores ilimitados

Se ofrece una prueba gratuita sin límite de tiempo; Las marcas de agua de prueba generaron códigos de barras. Para los equipos que ya pagan por la infraestructura del servidor para procesar documentos, el coste de la licencia suele ser una pequeña fracción del esfuerzo de ingeniería necesario para mantener una integración no oficial de ML Kit.

Conclusión

Google ML Kit Barcode Scanning es una biblioteca bien diseñada que hace exactamente lo que se diseñó para hacer: escanear códigos de barras de forma rápida y precisa en dispositivos Android e iOS. La comparación con IronBarcode no se trata tanto de qué biblioteca es mejor, sino más bien de qué biblioteca existe en el contexto donde se necesita.

Si escribes en Kotlin para Android y escaneas desde una cámara, ML Kit es una excelente opción. Si escribes en C# para .NET —ya sea para una API web, un servicio de procesamiento de documentos, una aplicación de Windows, una función en la nube o una aplicación MAUI multiplataforma— Google ML Kit no te ofrece ninguna solución. No existe ningún paquete NuGet , ni una API de C#, ni una vía de uso compatible con Google para integrarlo en código administrado. IronBarcode es una biblioteca nativa de .NET que abarca tanto la lectura como la generación en todas las plataformas compatibles con .NET .

Preguntas Frecuentes

¿Qué es Google ML Kit BarCode Scanning?

Google ML Kit Barcode Scanning es una biblioteca de códigos de barras .NET para generar y leer códigos de barras en aplicaciones C#. Es una de las varias alternativas que los desarrolladores evalúan cuando seleccionan una solución de código de barras para proyectos .NET.

¿Cuáles son las principales diferencias entre Google ML Kit Barcode Scanning e IronBarcode?

IronBarcode utiliza una API estática y sin estado que no requiere gestión de instancias, mientras que Google ML Kit Barcode Scanning suele requerir la creación y configuración de instancias antes de su uso. IronBarcode también ofrece compatibilidad nativa con PDF, detección automática de formatos y licencia de clave única en todos los entornos.

¿Es IronBarcode más fácil de licenciar que Google ML Kit Barcode Scanning?

IronBarcode utiliza una única clave de licencia que cubre tanto el desarrollo como los despliegues de producción. Esto simplifica las canalizaciones de CI/CD y las configuraciones de Docker en comparación con los sistemas de licencias que separan las claves de SDK de las claves de tiempo de ejecución.

¿Es IronBarcode compatible con todos los formatos de código de barras que admite Google ML Kit Barcode Scanning?

IronBarcode es compatible con más de 30 simbologías de códigos de barras, incluidos QR Code, Code 128, Code 39, DataMatrix, PDF417, Aztec, EAN-13, UPC-A, GS1 y muchos más. La autodetección de formatos significa que no se requiere una enumeración explícita de formatos.

¿Es IronBarcode compatible con la lectura nativa de códigos de barras en PDF?

Sí. IronBarcode lee códigos de barras directamente desde archivos PDF utilizando BarcodeReader.Read("document.pdf") sin necesidad de una biblioteca de renderizado de PDF independiente. Los resultados por página incluyen el número de página, el formato del código de barras, el valor y la puntuación de confianza.

¿Cómo gestiona IronBarcode el procesamiento por lotes en comparación con Google ML Kit Barcode Scanning?

Los métodos estáticos de IronBarcode no tienen estado y son naturalmente seguros para subprocesos, lo que permite el uso directo de Parallel.ForEach sin gestión de instancias por subproceso. No hay límite de rendimiento en ningún nivel de precios.

¿Qué versiones de .NET admite IronBarcode ?

IronBarcode es compatible con .NET Framework 4.6.2+, .NET Core 3.1 y .NET 5, 6, 7, 8 y 9 en un único paquete NuGet. Las plataformas de destino incluyen Windows x64/x86, Linux x64 y macOS x64/ARM.

¿Cómo instalo IronBarcode en un proyecto .NET?

Instale IronBarcode a través de NuGet: ejecute 'Install-Package IronBarCode' en la consola del gestor de paquetes, o 'dotnet add package IronBarCode' en la CLI. No se necesitan instaladores SDK ni archivos de ejecución adicionales.

¿Puedo evaluar IronBarcode antes de comprarlo, a diferencia de Google ML Kit?

Sí. El modo de prueba de IronBarcode devuelve los valores completos de los códigos de barras descodificados; sólo las imágenes de salida generadas reciben una marca de agua. Puede comprobar la precisión de la lectura en sus propios documentos antes de comprometerse con la compra.

¿Cuál es la diferencia de precio entre Google ML Kit Barcode Scanning e IronBarcode?

IronBarcode cuesta a partir de 749 dólares por una licencia perpetua de desarrollador único que cubre el desarrollo y la producción. Los detalles de precios y opciones de volumen están disponibles en la página de licencias de IronBarcode. No se requiere una licencia de ejecución por separado.

¿Es fácil migrar de Google ML Kit Barcode Scanning a IronBarcode?

La migración de Google ML Kit Barcode Scanning a IronBarcode implica principalmente la sustitución de las llamadas a la API basadas en instancias por los métodos estáticos de IronBarcode, la eliminación de la repetición de licencias y la actualización de los nombres de las propiedades de los resultados. La mayoría de las migraciones implican reducir código en lugar de añadirlo.

¿IronBarcode genera códigos QR con logotipos?

Sí. QRCodeWriter.CreateQrCode().AddBrandLogo("logo.png") incrusta una imagen de marca en un código QR de forma nativa con corrección de errores configurable. Los códigos QR coloreados también son compatibles con ChangeBarCodeColor().

Jordi Bardia
Ingeniero de Software
Jordi es más competente en Python, C# y C++. Cuando no está aprovechando sus habilidades en Iron Software, está programando juegos. Compartiendo responsabilidades para pruebas de productos, desarrollo de productos e investigación, Jordi agrega un valor inmenso a la mejora continua del producto. La experiencia variada lo mantiene ...
Leer más

Equipo de soporte de Iron

Estamos disponibles online las 24 horas, 5 días a la semana.
Chat
Email
Llámame