Escáner Web de Código de Barras
Escanear códigos de barras desde fuentes web a menudo requiere manejar datos de imagen como cadenas de texto en lugar de archivos físicos. La principal ventaja de este enfoque es que permite a su aplicación procesar imágenes directamente desde cargas de usuario o transmisiones de cámara web sin primero guardarlas en el disco.
En este ejemplo de código, demostraremos el fragmento de código principal que muestra cómo convertir una cadena Base64 de vuelta a una imagen y escanearla en busca de datos usando IronBarcode cuando se integra con una plataforma web como Blazor.
Guía de 5 pasos para configurar el escáner web IronBarcode
byte[] imagebyteData = Convert.FromBase64String((splitObject.Length > 1) ? splitObject[1] : splitObject[0]);using (var ms = new MemoryStream(imagebyteData))Image barcodeImage = Image.FromStream(ms);var results = BarcodeReader.Read(barcodeImage);return $"{DateTime.Now}: Barcode is ({results[0].Value})";
Explicación del código
Primero, la cadena de entrada, típicamente una cadena Base64, se convierte en un byte[] utilizando Convert.FromBase64String y una lógica de división adicional usando MemoryStream. Además, se realiza una comprobación para ver si la cadena necesita ser dividida. Esto maneja casos donde la entrada podría contener encabezados, como URI de datos, asegurando que solo se procese la data real de la imagen.
A continuación, estos bytes se cargan en un MemoryStream. Esto actúa como un contenedor temporal, permitiendo que un objeto Image se cree directamente desde el flujo usando Image.FromStream. Una vez cargada la imagen, se pasa a BarcodeReader.Read para escanear.
Finalmente, se devuelve el resultado de la lectura junto con una marca de tiempo. Se accede al array results, que contiene una lista de BarcodeResults, para devolver el valor del primer código de barras mediante la propiedad Value.
¡Aprende más sobre cómo crear un escáner web con IronBarcode!

