IronBarCode n'a pas pu reconnaître le code-barres MSI

This article was translated from English: Does it need improvement?
Translated
View the article in English

Problème

Lors de la création d'un code-barres MSI à l'aide de la bibliothèque IronBarcode , il arrive que la méthode BarcodeReader.Read ne puisse pas lire le code-barres MSI généré, ce qui entraîne une analyse vide et la valeur attendue du code-barres.

Solution

Pour garantir que le BarcodeReader.Read puisse lire le code-barres MSI, nous devons fournir le paramètre secondaire optionnel BarcodeReaderOptions pour la méthode Read. Dans le BarcodeReaderOptions, nous spécifions explicitement le type de code-barres que nous essayons de lire en attribuant la valeur ExpectedBarcodeTypes. De cette manière, la méthode Read reconnaîtrait le code-barres MSI généré par IronBarcode ainsi que tous les codes-barres MSI externes.

Voici un exemple rapide de la façon d'appliquer BarcodeReaderOptions à BarcodeReader.Read.

Exemple de Code

// Creating MSI Barcode with the value "12345"
var myBarcode = BarcodeWriter.CreateBarcode("12345", BarcodeWriterEncoding.MSI);

// Save barcode as image
myBarcode.SaveAsImage("msi.png");

// Reading MSI
var barcodeReaderOptions = new BarcodeReaderOptions
{
     // Assigning BarcodeEncoding.MSI to ExpectBarcodeType to ensure that IronBarcode expects MSI type barcodes specifically 
  ExpectBarcodeTypes = BarcodeEncoding.MSI,
};

// Read barcode with additional barcodeReaderOptions from above
var barcodeResults = BarcodeReader.Read("msi.png", barcodeReaderOptions);

// Using a for loop and print out the result 
foreach (BarcodeResult result in barcodeResults)
{
  Console.WriteLine(result.Text);
    // Output: 12345 
}
// Creating MSI Barcode with the value "12345"
var myBarcode = BarcodeWriter.CreateBarcode("12345", BarcodeWriterEncoding.MSI);

// Save barcode as image
myBarcode.SaveAsImage("msi.png");

// Reading MSI
var barcodeReaderOptions = new BarcodeReaderOptions
{
     // Assigning BarcodeEncoding.MSI to ExpectBarcodeType to ensure that IronBarcode expects MSI type barcodes specifically 
  ExpectBarcodeTypes = BarcodeEncoding.MSI,
};

// Read barcode with additional barcodeReaderOptions from above
var barcodeResults = BarcodeReader.Read("msi.png", barcodeReaderOptions);

// Using a for loop and print out the result 
foreach (BarcodeResult result in barcodeResults)
{
  Console.WriteLine(result.Text);
    // Output: 12345 
}
$vbLabelText   $csharpLabel

Dans l'exemple, nous instancions d'abord une nouvelle variable BarcodeReaderOptions puis nous assignons ExpectedBarcodeTypes avec l'énumération BarcodeEncoding.MSI, indiquant à IronBarcode de s'attendre au code-barres MSI à la place. Ensuite, nous imprimons la valeur du code-barres, qui serait 12345, dans une boucle for car barcodeResults renvoie un tableau de BarcodeResults et parcourons chaque résultat pour la valeur du texte.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 2,121,847 | Version : 2026.3 vient de sortir
Still Scrolling Icon

Vous faites encore défiler ?

Vous voulez une preuve rapidement ? PM > Install-Package BarCode
exécuter un échantillon regarder votre chaîne devenir un code-barres.