Saltar al pie de página
COMPARAR CON OTROS COMPONENTES

Una Comparación Entre el Decodificador ZXing e IronBarcode

Los códigos de barras están en todas partes. Las implementaciones de escaneo de códigos de barras son utilizadas por los autores para firmar sus productos, y la mayoría de las firmas de libros funcionan con implementaciones de escaneo de códigos de barras. Para nuestras aplicaciones, sin embargo, un escáner de códigos de barras no siempre puede ser apropiado. Puede tener imágenes digitales y videos de códigos de barras y querer saber qué representan en texto en inglés. Además, solo los códigos de barras 1-D, que solo se pueden usar en la biblioteca de clases de Windows RT y tienen una cantidad limitada de datos, pueden ser leídos por un escáner de códigos de barras. Los códigos de barras 2-D, también conocidos como códigos QR, son ampliamente utilizados hoy en día y pueden almacenar muchos más datos en su matriz de datos.

ZXing (Zebra Crossing) es una biblioteca de procesamiento de imágenes de códigos de barras 1D/2D de código abierto y multi-formato implementada en Java, con puertos a otros lenguajes. Puede leer y escribir datos en muchos formatos de código de barras diferentes, incluidos códigos QR y códigos UPC en computadoras.

IronBarcode es una biblioteca de software C# .NET que permite a los desarrolladores leer y escribir imágenes de códigos de barras utilizando la biblioteca ZXing para pruebas de aplicaciones web. Está diseñado para ser fácil de usar e integrar en cualquier aplicación .NET y se puede usar con los frameworks Windows Forms, WPF y ASP.NET.

La biblioteca de IronBarcode proporciona una API simple para leer y escribir imágenes de códigos de barras, lo que facilita a los desarrolladores agregar funcionalidad de escaneo y generación de códigos de barras a su software. IronBarcode admite la lectura y escritura de muchos formatos de códigos de barras diferentes, incluidos códigos QR, códigos UPC, códigos UPC-A, códigos EAN, RSS expanded, y más, que se utilizan para firmar productos.

A Comparison Between IronBarcode and ZXing .NET, Figure 1: Formatos de código de barras compatibles

Formatos de código de barras compatibles

La biblioteca tiene documentación bien escrita y código de ejemplo que muestra cómo empezar con IronBarcode, cómo escanear y decodificar códigos de barras, cómo generar y codificar códigos de barras, y cómo personalizar el proceso de lectura y escritura.

Una de las características más importantes de IronBarcode es su soporte para reconocimiento de códigos de barras y reconocimiento de códigos QR desde documentos PDF o archivos de imagen, con la capacidad de leer códigos de barras desde una ruta de archivo o un objeto bitmap.

IronBarcode es fácil de usar, poderoso y rápido. Es una gran herramienta para cualquiera que necesite agregar funcionalidad de escaneo o generación de códigos de barras a su software. Y dado que está construido sobre la popular y confiable biblioteca ZXing, puede estar seguro de que es una solución confiable y de alta calidad.

A Comparison Between IronBarcode and ZXing .NET, Figure 2: Formatos de código de barras compatibles

Biblioteca C# IronBarcode y sus características

Cómo se creó IronBarcode a partir del decodificador ZXing

IronBarcode es una biblioteca comercial de terceros de .NET para decodificar códigos de barras en C# y VB.NET, que utiliza la biblioteca de código abierto ZXing como su motor subyacente. La biblioteca proporciona una API simplificada y fácil de usar para trabajar con códigos de barras, así como funcionalidades adicionales como la capacidad de leer códigos de barras desde imágenes y PDFs, y la capacidad de crear códigos de barras en una variedad de formatos.

IronBarcode fue creado por un equipo de desarrolladores que querían construir una biblioteca de decodificación de códigos de barras más amigable para el usuario y rica en características para el ecosistema .NET. Aprovecharon la biblioteca ZXing, que es una biblioteca madura y de código abierto con una amplia gama de formatos de códigos de barras soportados, como la base de su biblioteca. Luego construyeron su propio envoltorio personalizado alrededor del código base de ZXing, proporcionando una API más simple y consistente para que los desarrolladores la usen, así como características adicionales como soporte para leer códigos de barras desde imágenes y PDFs.

Comparación de IronBarcode con el decodificador ZXing

IronBarcode y ZXing son ambas bibliotecas para decodificar imágenes de códigos de barras, pero tienen algunas diferencias importantes que hacen de IronBarcode una opción más avanzada y versátil.

IronBarcode ofrece una gama más amplia de formatos de códigos de barras web soportados que ZXing. IronBarcode puede decodificar formatos soportados como códigos QR, Code 39, Code 128, EAN-8, EAN-13, UPC-A, UPC-E, Codabar, ITF, Data Matrix, PDF-417, RSS expanded y más. Los usuarios de Android no están excluidos; IronBarcode se puede integrar fácilmente en aplicaciones móviles para facilitar el escaneo de códigos de barras a los usuarios de Android. ZXing admite muchos de los mismos formatos, pero no tiene soporte completo para ciertos formatos como ITF y Codabar, y no ofrece soporte para ciertos formatos de código de barras 2D como PDF-417.

// Example showing how to generate a simple QR Code image and save it as a PNG file
// using IronBarcode in C#.
var qrCode = IronBarCode.QRCodeWriter.CreateQrCode("hello world", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium);
qrCode.SaveAsPng("MyQR.png");
// Example showing how to generate a simple QR Code image and save it as a PNG file
// using IronBarcode in C#.
var qrCode = IronBarCode.QRCodeWriter.CreateQrCode("hello world", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium);
qrCode.SaveAsPng("MyQR.png");
' Example showing how to generate a simple QR Code image and save it as a PNG file
' using IronBarcode in C#.
Dim qrCode = IronBarCode.QRCodeWriter.CreateQrCode("hello world", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium)
qrCode.SaveAsPng("MyQR.png")
$vbLabelText   $csharpLabel
A Comparison Between IronBarcode and ZXing .NET, Figure 3: Generating Barcode

Generar una imagen de código QR simple usando IronBarcode

Otra ventaja de IronBarcode es su API web más amigable. La biblioteca está diseñada para ser fácil de usar e integrar en proyectos existentes, con una API web de alto nivel que abstrae muchos de los detalles complejos de la decodificación de códigos de barras.

IronBarcode también tiene un mejor rendimiento que ZXing. La biblioteca fue desarrollada en C# y es capaz de usar procesamiento paralelo para decodificar códigos de barras más rápido que la biblioteca ZXing. Además, IronBarcode puede leer códigos de barras de tipos de archivos de imagen no soportados por ZXing, como GIF, TIFF y JPEG-XR.

A Comparison Between IronBarcode and ZXing .NET, Figure 4: Generating Barcode

Generar una imagen de código QR simple usando IronBarcode

En resumen, IronBarcode es una biblioteca de decodificación de códigos de barras más avanzada y versátil que ZXing. Ofrece una gama más amplia de formatos de códigos de barras soportados, una API más amigable y un mejor rendimiento, lo que la convierte en una buena opción para desarrolladores que trabajan con el framework .NET.

Cómo usar ZXing Decoder y IronBarcode en C

ZXing .NET es un puerto de la biblioteca ZXing, una biblioteca de código abierto para procesar códigos de barras 1D/2D en múltiples formatos, originalmente implementada en Java. Ha sido portado a C# y está disponible a través del gestor de paquetes NuGet. IronBarcode es una Biblioteca C# .NET que puede leer y escribir códigos de barras. Es un envoltorio alrededor de la biblioteca ZXing y también está disponible a través de NuGet.

En este tutorial, utilizaremos tanto el decodificador ZXing en línea como IronBarcode para decodificar códigos de barras en una aplicación web C# .NET para decodificar códigos de barras. Usaremos Visual Studio para este tutorial, pero los conceptos deberían aplicarse a cualquier entorno de desarrollo C#.

Paso 1: Crear un nuevo proyecto C# .NET en Visual Studio

Crear un nuevo proyecto C# en Visual Studio yendo a Archivo > Nuevo > Proyecto. Seleccionar "Aplicación Windows Forms" y darle un nombre a su proyecto.

Paso 2: Instalar los paquetes NuGet de ZXing .NET e IronBarcode

En el Explorador de Soluciones, haga clic derecho sobre el proyecto y seleccione "Administrar Paquetes NuGet." Busque ZXing.NET e "IronBarcode" e instálelos en el proyecto.

Paso 3: Añadir un PictureBox y un Botón al Formulario

En la vista de Diseño del Formulario, añade un PictureBox y un Button al Formulario. El PictureBox se usará para mostrar la imagen que vamos a decodificar, y el Button se usará para iniciar el proceso de decodificación.

Paso 4: Añadir las siguientes declaraciones using al inicio del código del Formulario:

using IronBarCode;
using ZXing;
using IronBarCode;
using ZXing;
Imports IronBarCode
Imports ZXing
$vbLabelText   $csharpLabel

Paso 5: Manejar el evento de clic del Button

Haga doble clic en el Botón en la vista de Diseño para crear un manejador de eventos de clic. En el manejador, añada el siguiente código para abrir un OpenFileDialog y permitir al usuario seleccionar una imagen para decodificar:

private void button1_Click(object sender, EventArgs e) {
    OpenFileDialog ofd = new OpenFileDialog();
    ofd.Filter = "Images (*.BMP;*.JPG;*.GIF;*.PNG)|*.BMP;*.JPG;*.GIF;*.PNG|All files (*.*)|*.*";
    ofd.FilterIndex = 1;
    if (ofd.ShowDialog() == DialogResult.OK) {
        pictureBox1.Image = Image.FromFile(ofd.FileName);
        // Decode the barcode from the image here
    }
}
private void button1_Click(object sender, EventArgs e) {
    OpenFileDialog ofd = new OpenFileDialog();
    ofd.Filter = "Images (*.BMP;*.JPG;*.GIF;*.PNG)|*.BMP;*.JPG;*.GIF;*.PNG|All files (*.*)|*.*";
    ofd.FilterIndex = 1;
    if (ofd.ShowDialog() == DialogResult.OK) {
        pictureBox1.Image = Image.FromFile(ofd.FileName);
        // Decode the barcode from the image here
    }
}
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
	Dim ofd As New OpenFileDialog()
	ofd.Filter = "Images (*.BMP;*.JPG;*.GIF;*.PNG)|*.BMP;*.JPG;*.GIF;*.PNG|All files (*.*)|*.*"
	ofd.FilterIndex = 1
	If ofd.ShowDialog() = DialogResult.OK Then
		pictureBox1.Image = Image.FromFile(ofd.FileName)
		' Decode the barcode from the image here
	End If
End Sub
$vbLabelText   $csharpLabel

Paso 6: Decodificar el código de barras de la imagen

Después de la siguiente línea:

pictureBox1.Image = Image.FromFile(ofd.FileName); 
pictureBox1.Image = Image.FromFile(ofd.FileName); 
pictureBox1.Image = Image.FromFile(ofd.FileName)
$vbLabelText   $csharpLabel

Añadir el siguiente bloque de código para decodificar el código de barras de la imagen en el manejador de eventos de clic del botón.

// Create a BarcodeReader instance from ZXing.NET and decode the image.
var BarcodeReader = new BarcodeReader();
var Result = BarcodeReader.Decode((Bitmap)pictureBox1.Image);
if (Result != null) {
    MessageBox.Show(Result.Text);
} else {
    MessageBox.Show("No barcode found.");
}
// Create a BarcodeReader instance from ZXing.NET and decode the image.
var BarcodeReader = new BarcodeReader();
var Result = BarcodeReader.Decode((Bitmap)pictureBox1.Image);
if (Result != null) {
    MessageBox.Show(Result.Text);
} else {
    MessageBox.Show("No barcode found.");
}
' Create a BarcodeReader instance from ZXing.NET and decode the image.
Dim BarcodeReader As New BarcodeReader()
Dim Result = BarcodeReader.Decode(CType(pictureBox1.Image, Bitmap))
If Result IsNot Nothing Then
	MessageBox.Show(Result.Text)
Else
	MessageBox.Show("No barcode found.")
End If
$vbLabelText   $csharpLabel

Este código crea una nueva instancia de la clase BarcodeReader de ZXing.NET y luego usa el método Decode para decodificar el código de barras de la imagen. El método Decode devuelve un objeto Result, que contiene información sobre el código de barras que fue decodificado.

A Comparison Between IronBarcode and ZXing .NET, Figure 5: Crear código QR con imagen de logotipo

Crear código QR con imagen de logotipo

Ventajas de IronBarcode en comparación con ZXIng DecoderOnline

IronBarcode y ZXing son ambas bibliotecas de lectura de códigos de barras y códigos QR para el lenguaje de programación C#. Ambas bibliotecas tienen sus propias ventajas y desventajas, y la elección entre ellas dependerá de los requisitos específicos de su proyecto.

Una de las principales ventajas de IronBarcode sobre ZXing es su facilidad de uso. IronBarcode tiene una API simple e intuitiva que facilita a los desarrolladores comenzar a trabajar rápidamente con códigos de barras y códigos QR. Con unas pocas líneas de código, puede leer y escribir códigos de barras y códigos QR con un esfuerzo mínimo. En contraste, ZXing tiene una API más compleja que puede ser un desafío para los desarrolladores, especialmente si son nuevos en la lectura de códigos de barras y códigos QR.

Otra ventaja de IronBarcode es su alto rendimiento. IronBarcode utiliza algoritmos avanzados para leer y decodificar rápidamente códigos de barras y códigos QR, lo que lo hace más rápido que otras bibliotecas como ZXing. Esto lo convierte en una buena opción para proyectos que requieren un escaneo y decodificación rápidos de códigos de barras y códigos QR.

IronBarcode también ofrece mejor soporte para leer y escribir códigos de barras desde una variedad de formatos de imagen, incluidos JPEG, PNG, GIF, BMP y TIFF. En contraste, el soporte de formatos de imagen de ZXing es más limitado, y puede no ser capaz de leer o escribir códigos de barras de ciertos tipos de imágenes.

using IronBarCode;
using System;
using System.Drawing;

// Example of using IronBarcode to read barcodes with advanced options 
// such as rotation and image correction.
var PhotoResult = BarcodeReader.ReadASingleBarcode("Photo.png", BarcodeEncoding.Code128, BarcodeReader.BarcodeRotationCorrection.Medium, BarcodeReader.BarcodeImageCorrection.DeepCleanPixels);
string Value = PhotoResult.Value;
System.Drawing.Bitmap Img = PhotoResult.BarcodeImage;
BarcodeEncoding BarcodeType = PhotoResult.BarcodeType;
byte[] Binary = PhotoResult.BinaryValue;
Console.WriteLine(PhotoResult.Value);
using IronBarCode;
using System;
using System.Drawing;

// Example of using IronBarcode to read barcodes with advanced options 
// such as rotation and image correction.
var PhotoResult = BarcodeReader.ReadASingleBarcode("Photo.png", BarcodeEncoding.Code128, BarcodeReader.BarcodeRotationCorrection.Medium, BarcodeReader.BarcodeImageCorrection.DeepCleanPixels);
string Value = PhotoResult.Value;
System.Drawing.Bitmap Img = PhotoResult.BarcodeImage;
BarcodeEncoding BarcodeType = PhotoResult.BarcodeType;
byte[] Binary = PhotoResult.BinaryValue;
Console.WriteLine(PhotoResult.Value);
Imports IronBarCode
Imports System
Imports System.Drawing

' Example of using IronBarcode to read barcodes with advanced options 
' such as rotation and image correction.
Private PhotoResult = BarcodeReader.ReadASingleBarcode("Photo.png", BarcodeEncoding.Code128, BarcodeReader.BarcodeRotationCorrection.Medium, BarcodeReader.BarcodeImageCorrection.DeepCleanPixels)
Private Value As String = PhotoResult.Value
Private Img As System.Drawing.Bitmap = PhotoResult.BarcodeImage
Private BarcodeType As BarcodeEncoding = PhotoResult.BarcodeType
Private Binary() As Byte = PhotoResult.BinaryValue
Console.WriteLine(PhotoResult.Value)
$vbLabelText   $csharpLabel
A Comparison Between IronBarcode and ZXing .NET, Figure 6: Reading a barcode from a phone camera in C#

Lectura de un código de barras desde la imagen de la cámara de un teléfono en C#

IronBarcode ofrece más opciones de personalización, como ajustar el proceso de lectura de códigos de barras, soporte para documentos multipágina y varios formatos de códigos de barras, como DataMatrix, Aztec y PDF-417. Esto puede ser útil si necesita trabajar con diferentes tipos de códigos de barras o tiene requisitos específicos.

Por otro lado, ZXing es una biblioteca de código abierto que es gratuita. Esto puede ser una ventaja significativa para proyectos con restricciones de presupuesto.

En conclusión, tanto IronBarcode como ZXing son poderosas bibliotecas para trabajar con códigos de barras y códigos QR en C#, pero IronBarcode ofrece varias ventajas sobre ZXing, como facilidad de uso, alto rendimiento, mejor soporte de formatos de imagen y más opciones de personalización. Es mejor evaluar ambas bibliotecas y elegir la que mejor se ajuste a las necesidades de su proyecto.

IronBarcode y ZXing son ambas bibliotecas populares para trabajar con códigos de barras y códigos QR en C#. Ambas bibliotecas tienen sus propias ventajas y desventajas, y la elección entre ellas dependerá de los requisitos específicos de su proyecto. En este artículo, tomaremos un vistazo detallado a los beneficios de utilizar IronBarcode sobre ZXing, con ejemplos para ilustrar las principales diferencias.

Una de las principales ventajas de IronBarcode es su facilidad de uso. IronBarcode tiene una API sencilla e intuitiva que hace que sea fácil para los desarrolladores comenzar rápidamente a trabajar con códigos de barras y códigos QR. Con solo unas pocas líneas de código, puede leer y escribir códigos de barras y códigos QR con mínimo esfuerzo. Por ejemplo, para leer un código de barras desde un archivo de imagen usando IronBarcode, puede usar el siguiente código:

var reader = new BarcodeReader();
var result = reader.Read("image.jpg");
Console.WriteLine(result.Text);
var reader = new BarcodeReader();
var result = reader.Read("image.jpg");
Console.WriteLine(result.Text);
Dim reader = New BarcodeReader()
Dim result = reader.Read("image.jpg")
Console.WriteLine(result.Text)
$vbLabelText   $csharpLabel

En contraste, ZXing tiene una API más compleja que puede ser un reto para los desarrolladores, especialmente si son nuevos en la lectura de códigos de barras y códigos QR. El ejemplo proporcionado arriba habría tomado más líneas de código para lograr el mismo resultado usando ZXing.

Otra ventaja de IronBarcode es su alto rendimiento. IronBarcode utiliza algoritmos avanzados para leer y decodificar rápidamente códigos de barras y códigos QR, lo que lo hace más rápido que otras bibliotecas como ZXing. Esto lo convierte en una buena elección para proyectos que requieren escaneo y decodificación de códigos de barras y códigos QR a alta velocidad. Por ejemplo, IronBarcode puede leer y decodificar un código de barras desde una imagen en menos de un segundo, lo que lo hace una opción ideal para operaciones de escaneo y decodificación a gran escala.

IronBarcode también ofrece mejor soporte para leer y escribir códigos de barras desde varios formatos de imagen, incluidos JPEG, PNG, GIF, BMP y TIFF. Esto permite a los desarrolladores trabajar fácilmente con códigos de barras en diferentes formatos de imagen sin tener que preocuparse por problemas de compatibilidad. En contraste, el soporte de formatos de imagen de ZXing es más limitado y puede no ser capaz de leer o escribir códigos de barras de ciertos tipos de imágenes.

using IronBarCode;
using System;
using System.Drawing;

// Example of reading multiple barcodes from a PDF using IronBarcode
PagedBarcodeResult[] PDFResults = BarcodeReader.ReadBarcodesFromPdf("MultipleBarcodes.pdf");

// Work with the results
foreach (var PageResult in PDFResults)
{
    string Value = PageResult.Value;
    int PageNum = PageResult.PageNumber;
    System.Drawing.Bitmap Img = PageResult.BarcodeImage;
    BarcodeEncoding BarcodeType = PageResult.BarcodeType;
    byte[] Binary = PageResult.BinaryValue;
    Console.WriteLine("Page " + PageNum + ": " + PageResult.Value);
}
using IronBarCode;
using System;
using System.Drawing;

// Example of reading multiple barcodes from a PDF using IronBarcode
PagedBarcodeResult[] PDFResults = BarcodeReader.ReadBarcodesFromPdf("MultipleBarcodes.pdf");

// Work with the results
foreach (var PageResult in PDFResults)
{
    string Value = PageResult.Value;
    int PageNum = PageResult.PageNumber;
    System.Drawing.Bitmap Img = PageResult.BarcodeImage;
    BarcodeEncoding BarcodeType = PageResult.BarcodeType;
    byte[] Binary = PageResult.BinaryValue;
    Console.WriteLine("Page " + PageNum + ": " + PageResult.Value);
}
Imports IronBarCode
Imports System
Imports System.Drawing

' Example of reading multiple barcodes from a PDF using IronBarcode
Private PDFResults() As PagedBarcodeResult = BarcodeReader.ReadBarcodesFromPdf("MultipleBarcodes.pdf")

' Work with the results
For Each PageResult In PDFResults
	Dim Value As String = PageResult.Value
	Dim PageNum As Integer = PageResult.PageNumber
	Dim Img As System.Drawing.Bitmap = PageResult.BarcodeImage
	Dim BarcodeType As BarcodeEncoding = PageResult.BarcodeType
	Dim Binary() As Byte = PageResult.BinaryValue
	Console.WriteLine("Page " & PageNum & ": " & PageResult.Value)
Next PageResult
$vbLabelText   $csharpLabel
A Comparison Between IronBarcode and ZXing .NET, Figure 7: Lectura de códigos de barras desde una imagen TIFF de varios fotogramas

Lectura de códigos de barras desde una imagen TIFF de varios fotogramas

IronBarcode también ofrece más opciones de personalización, permitiendo a los desarrolladores ajustar el proceso de lectura de códigos de barras para satisfacer sus necesidades específicas. Por ejemplo, puede usar IronBarcode para especificar diferentes formatos de códigos de barras, como DataMatrix, Aztec y PDF-417. Esto puede ser útil si necesita trabajar con códigos de barras en diferentes formatos o con requisitos específicos. Además, IronBarcode ofrece soporte para documentos multipágina, lo que permite a los desarrolladores leer y extraer información de códigos de barras de múltiples páginas de un documento.

Una cosa más, IronBarcode tiene mejor manejo de errores y está mejor adaptado para aplicaciones a nivel empresarial.

Aquí hay un ejemplo de cómo decodificar múltiples códigos de barras desde un archivo de imagen:

var barcodeResults = IronBarCode.BarcodeReader.ReadMultiple("multibarcode.png");
foreach (var result in barcodeResults)
{
    Console.WriteLine(result.Text);
}
var barcodeResults = IronBarCode.BarcodeReader.ReadMultiple("multibarcode.png");
foreach (var result in barcodeResults)
{
    Console.WriteLine(result.Text);
}
Dim barcodeResults = IronBarCode.BarcodeReader.ReadMultiple("multibarcode.png")
For Each result In barcodeResults
	Console.WriteLine(result.Text)
Next result
$vbLabelText   $csharpLabel

Por otro lado, ZXing es una biblioteca de código abierto y se puede usar de forma gratuita. Esto podría ser una ventaja significativa para proyectos con presupuestos limitados. Sin embargo, se debe tener en cuenta que el costo de usar IronBarcode puede ser compensado por el tiempo y esfuerzo ahorrado al usar una biblioteca más amigable y poderosa.

A Comparison Between IronBarcode and ZXing .NET, Figure 8: Lectura de códigos de barras desde una imagen TIFF de varios fotogramas

Utilice C# para crear una imagen de código de barras anotada y estilizada

En conclusión, tanto IronBarcode como ZXing son poderosas bibliotecas para trabajar con códigos de barras y códigos QR en C#. Sin embargo, IronBarcode ofrece una serie de ventajas sobre ZXing, como facilidad de uso, alto rendimiento, mejor soporte de formatos de imagen, y más opciones de personalización. Si su proyecto requiere escaneo y decodificación de códigos de barras rápidos y eficientes, o si necesita más control sobre el proceso de lectura de códigos de barras, IronBarcode es una excelente elección.

Precios y licencias

ZXing se lanza bajo la licencia de código abierto Apache 2.0, lo que significa que se puede usar, distribuir y modificar libremente. No hay costo asociado con el uso de la biblioteca en sus proyectos de software. Sin embargo, si usa la biblioteca en un producto comercial, debe cumplir con los términos de la licencia Apache 2.0, que incluye mostrar de manera prominente el aviso de licencia y descargo de responsabilidad.

IronBarcode es un software que ofrece una licencia gratuita para desarrolladores. Los precios comienzan en $liteLicense para el paquete Lite e incluyen una licencia perpetua, la capacidad de usar el software en entornos de desarrollo, staging y producción, una garantía de devolución de dinero de 30 días y un año de soporte de software y actualizaciones. Para más información sobre precios y licencias de IronBarcode, visite el sitio web de la empresa.

A Comparison Between IronBarcode and ZXing .NET, Figure 9: Lectura de códigos de barras desde una imagen TIFF de varios fotogramas

Precios de licencias de IronBarcode

¿Por qué elegir IronBarcode?

IronBarcode fue desarrollado específicamente para Aplicaciones .NET y se basa en la biblioteca ZXing. IronBarcode también está escrito completamente en C#, lo cual puede ser una ventaja si su aplicación también está escrita en C# y quiere usarlo en su Ecosistema .NET.

IronBarcode tiene como objetivo proporcionar una interfaz más amigable y fácil de usar para decodificar y codificar códigos de barras, mientras que ZXing se centra principalmente en proporcionar los algoritmos y bibliotecas subyacentes.

IronBarcode ofrece varias características adicionales sobre la biblioteca ZXing, como la capacidad de corregir automáticamente errores comunes de escaneo, soporte para diferentes tipos de lectura y escaneo de códigos de barras, y la capacidad de leer los contenidos de códigos de barras directamente desde archivos de imagen o bitmaps.

En resumen, IronBarcode puede ser una buena elección si su aplicación está escrita en C# y está buscando una biblioteca fácil de usar y poderosa que pueda leer y escribir una variedad de formatos de códigos de barras. Sin embargo, si está buscando una biblioteca más universal y de bajo nivel que pueda usarse en múltiples idiomas, ZXing puede ser una mejor opción.

Conclusión

En resumen, IronBarcode es una biblioteca de software flexible y eficiente que admite una amplia gama de formatos de códigos de barras, símbolos y caracteres. Es compatible con varios sistemas operativos y ofrece licenciamiento confiable y soporte.

IronBarcode y ZXing son ambas bibliotecas para leer y escribir códigos de barras en el .NET Framework. IronBarcode utiliza la biblioteca ZXing como dependencia para realizar operaciones de lectura y escritura de códigos de barras. IronBarcode proporciona una API simple y fácil de usar para leer y escribir códigos de barras en C# y VB.NET, mientras que ZXing es una biblioteca de bajo nivel que proporciona mucha flexibilidad y personalización. IronBarcode utiliza ZXing para realizar el procesamiento y decodificación de códigos de barras subyacentes, pero proporciona una interfaz más simple y conveniente para los desarrolladores.

IronBarcode es un envoltorio C# / VB.NET alrededor de la biblioteca ZXing, lo que significa que proporciona una interfaz C# / VB.NET a las funciones proporcionadas por ZXing. IronBarcode facilita el uso de ZXing al proporcionar una API más conveniente y fácil de usar para leer y escribir códigos de barras.

Comparado con ZXing.NET, IronBarcode proporciona más características y tiempos de procesamiento más rápidos para el reconocimiento y generación de códigos de barras, y tiene la capacidad adicional de leer códigos de barras de varios formatos de imagen y documentos PDF.

A Comparison Between IronBarcode and ZXing .NET, Figure 10: Iron Suite Prices

Precios de licencias de Iron Suite

In addition, IronBarcode is available for free for early-stage development and offers a free trial for commercial use. Con sus diferentes niveles de precios, los desarrolladores pueden elegir la solución que mejor se adapte a sus necesidades y presupuesto. También hay una oferta para adquirir un conjunto de 5 productos de software de Iron al precio de 2. En general, IronBarcode tiene una clara ventaja sobre ZXing.NET

Por favor notaZXing es una marca registrada de su respectivo propietario. Este sitio no está afiliado, endosado ni respaldado por ZXing. Todos los nombres de producto, logotipos y marcas son propiedad de sus respectivos dueños. Las comparaciones son sólo para fines informativos y reflejan información disponible públicamente al momento de escribir.

Preguntas Frecuentes

¿Cómo puedo convertir HTML a PDF en C#?

Puedes usar el método RenderHtmlAsPdf de IronPDF para convertir cadenas de HTML en PDFs. También puedes convertir archivos HTML a PDFs usando RenderHtmlFileAsPdf.

¿Cuáles son las ventajas de usar IronBarcode sobre ZXing para aplicaciones en C#?

IronBarcode ofrece una API más amigable para el usuario, mejor rendimiento y un rango más amplio de formatos de código de barras compatibles en comparación con ZXing. Además, soporta el reconocimiento de códigos de barras desde documentos PDF y archivos de imagen, incluyendo GIF, TIFF y JPEG-XR.

¿Puede IronBarcode leer códigos de barras desde documentos PDF?

Sí, IronBarcode puede leer códigos de barras desde documentos PDF, proporcionando más flexibilidad que ZXing, que se centra principalmente en archivos de imagen.

¿Qué formatos de imagen soporta IronBarcode para la lectura de códigos de barras?

IronBarcode soporta la lectura de códigos de barras desde varios formatos de imagen, incluidos GIF, TIFF y JPEG-XR, aumentando su versatilidad en el manejo de diferentes tipos de medios.

¿Qué opciones de personalización ofrece IronBarcode?

IronBarcode ofrece opciones de personalización como la lectura de códigos de barras desde documentos de múltiples páginas y funciones avanzadas de corrección de imágenes como rotación y limpieza profunda de píxeles.

¿Cómo maneja IronBarcode los formatos de código de barras 2D?

IronBarcode maneja eficazmente los formatos de código de barras 2D, como códigos QR y Data Matrix, que pueden almacenar más datos que los códigos de barras 1D tradicionales.

¿Hay una versión gratuita de IronBarcode disponible?

Sí, IronBarcode ofrece una licencia de desarrollador gratuita, proporcionando acceso a sus características con algunas limitaciones. También hay opciones pagadas con características avanzadas para uso comercial.

¿Cuál es el motor principal detrás de IronBarcode?

IronBarcode utiliza la biblioteca ZXing como su motor principal pero la mejora con un envoltorio personalizado, proporcionando una interfaz más amigable y características adicionales.

¿Por qué los desarrolladores podrían elegir IronBarcode para aplicaciones .NET?

Los desarrolladores podrían elegir IronBarcode por su facilidad de uso, rápida implementación y soporte para una amplia gama de formatos de código de barras, lo que lo hace ideal para aplicaciones de nivel empresarial dentro del marco .NET.

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