Comment lire les codes-barres dans les flux de données

Hairil related to Comment lire les codes-barres dans les flux de données
Hairil Hasyimi Bin Omar
mars 29, 2023
Mise à jour octobre 20, 2024
Partager:
This article was translated from English: Does it need improvement?
Translated
View the article in English


MemoryStream est une classe du Framework .NET qui permet de lire et d'écrire dans un flux stocké en mémoire. Il s'agit d'un type de flux qui peut être utilisé pour manipuler des données qui ne sont pas stockées dans un fichier physique, mais plutôt dans la mémoire.

Outre la lecture de codes-barres à partir de fichiers images ou de fichiers PDF, IronBarcode excelle également dans la lecture de codes-barres à partir de flux. IronBarcode est une excellente API dans une application, capable d'accepter un document PDF ou un flux d'images en entrée et de produire le résultat de la lecture des codes-barres contenus dans le flux. Voyons maintenant comment y parvenir.

Lire les codes-barres à partir d'un flux d'images

Dans cette section, nous vous montrerons comment utiliser IronBarcode pour lire un flux d'image, ainsi que plusieurs flux d'images stockés dans une List<>

:path=/static-assets/barcode/content-code-examples/how-to/read-barcodes-from-streams-1.cs
using IronBarCode;
using IronSoftware.Drawing;
using System;
using System.Collections.Generic;
using System.IO;

List<MemoryStream> list = new List<MemoryStream>();
list.Add(AnyBitmap.FromFile("image1.jpg").ToStream());
list.Add(AnyBitmap.FromFile("image2.jpg").ToStream());
list.Add(AnyBitmap.FromFile("image3.png").ToStream());

var myBarcode = BarcodeReader.Read(list);

foreach (var barcode in myBarcode)
{
    Console.WriteLine(barcode.ToString());
}
Imports IronBarCode
Imports IronSoftware.Drawing
Imports System
Imports System.Collections.Generic
Imports System.IO

Private list As New List(Of MemoryStream)()
list.Add(AnyBitmap.FromFile("image1.jpg").ToStream())
list.Add(AnyBitmap.FromFile("image2.jpg").ToStream())
list.Add(AnyBitmap.FromFile("image3.png").ToStream())

Dim myBarcode = BarcodeReader.Read(list)

For Each barcode In myBarcode
	Console.WriteLine(barcode.ToString())
Next barcode
$vbLabelText   $csharpLabel

À partir de l'extrait de code ci-dessus, nous pouvons voir qu'IronBarcode peut accepter un objet, ainsi qu'une liste d'objets de type MemoryStream dans la méthode BarcodeReader.Read() et lire les objets de flux. Dans l'extrait de code ci-dessus, nous avons également introduit notre bibliothèque gratuite et open source, IronDrawing qui peut être utilisée pour convertir des images en objets MemoryStream. Toutefois, si vous avez déjà une image ou une liste d'images sous forme d'objets , vous pouvez l'utiliser directement comme argument dans BarcodeReader.Read() pour lire les codes-barres présents dans le flux.

Lire les codes-barres dans un flux de documents PDF

Dans cette section, nous allons vous montrer comment utiliser IronBarcode pour lire un fichier de document PDF en tant qu'objet MemoryStream ou une liste MemoryStream de documents PDF.

:path=/static-assets/barcode/content-code-examples/how-to/read-barcodes-from-streams-2.cs
using IronBarCode;
using IronPdf;
using System;
using System.IO;

MemoryStream document = PdfDocument.FromFile(@"file_path.pdf").Stream;

var myBarcode = BarcodeReader.ReadPdf(document);

foreach (var value in myBarcode)
{
    Console.WriteLine(value.ToString());
}
Imports IronBarCode
Imports IronPdf
Imports System
Imports System.IO

Private document As MemoryStream = PdfDocument.FromFile("file_path.pdf").Stream

Private myBarcode = BarcodeReader.ReadPdf(document)

For Each value In myBarcode
	Console.WriteLine(value.ToString())
Next value
$vbLabelText   $csharpLabel

Comme on peut le voir dans l'extrait de code ci-dessus, il n'y a pas beaucoup de différence entre la lecture de codes-barres à partir d'un document PDF en tant qu'objet MemoryStream et la lecture de codes-barres en tant qu'objet MemoryStream. La seule différence réside dans la méthode de lecture utilisée pour lire les codes-barres à partir des documents PDF, qui est BarcodeReade.ReadPdf() acceptant le document PDF comme un seul objet MemoryStream. Dans l'extrait de code ci-dessus également, nous avons utilisé IronPDF comme assistant pour convertir le document PDF en un objet MemoryStream. S'il y a plusieurs documents PDF sous forme de flux que vous souhaitez que IronBarcode lise, il est recommandé de fusionner tous les documents PDF en un seul flux de document PDF et de l'alimenter à la méthode BarcodeReader.ReadPdf(). Alors, n'hésitez pas à essayer et à manipuler la bibliothèque comme vous le souhaitez !!

Hairil related to Lire les codes-barres dans un flux de documents PDF
Ingénieur logiciel
Comme tous les grands ingénieurs, Hairil est un fervent apprenant. Il affine ses connaissances en C#, Python et Java, et les utilise pour apporter une valeur ajoutée aux membres de l'équipe d'Iron Software. Hairil a rejoint l'équipe d'Iron Software en provenance de l'Universiti Teknologi MARA en Malaisie, où il a obtenu une licence en génie chimique et des procédés.