Reconnaître et générer des codes-barres DotCode à l'aide du VintaSoft Barcode .NET SDK

Catégorie du blog: Code-barres.NET

10.07.2025

VintaSoft Barcode .NET SDK est un SDK professionnel multiplateforme pour Windows, Linux et macOS.qui vous permet de reconnaître et de générer des codes-barres DotCode dans .NET, WPF, Web et MAUI. Quelques lignes de code suffisent pour ajouter cette fonctionnalité à votre application .NET.


Qu'est-ce qu'un code-barres DotCode?

Le DotCode est un code-barres matriciel bidimensionnel conçu pour être lu de manière fiable lorsqu'il est imprimé à l'aide de technologies jet d'encre ou laser à haute vitesse. Ce code-barres permet d'apposer des données dynamiques (date de production, date de péremption, numéro de série, etc.) sur les produits à la vitesse d'une chaîne de production. Une caractéristique distinctive du code-barres DotCode est l'absence de motifs fixes visibles, ainsi que la disposition des points de la matrice en damier:


Caractéristiques du code-barres DotCode

Le code-barres DotCode est défini par la norme AIM de 2019, qui décrit la version actuelle de DotCode Rev 4.

Le code-barres DotCode peut stocker une quantité illimitée de données mixtes dans trois modes d'encodage:

Support for the GS1 standard allows you to encode data in GS1 format (BarcodeSymbologySubsets.GS1DotCode).

Le code-barres DotCode utilise l'algorithme de correction d'erreurs Reed-Solomon, qui permet de reconnaître les codes-barres endommagés.

Le code-barres DotCode peut encoder les caractères spéciaux suivants:


Structure de la matrice

La matrice DotCode peut être carrée ou rectangulaire, permettant ainsi d'ajuster le rapport hauteur/largeur selon les besoins. La taille minimale des symboles peut être très petite (jusqu'à 3 x 3 mm), ce qui la rend idéale pour le marquage d'articles compacts tels que les paquets de cigarettes ou les produits pharmaceutiques.



VintaSoft Barcode .NET SDK peut générer un code-barres DotCode sous forme d'image raster ou vectorielle, ainsi qu'une MatrixBarcodeStructure, qui permet d'effectuer l'impression de codes-barres à haute vitesse.


Quels codes-barres DotCode le SDK VintaSoft Barcode .NET peut-il reconnaître?

VintaSoft Barcode .NET SDK lors de la reconnaissance des codes-barres DotCode utilise des algorithmes uniques qui vous permettent de reconnaître rapidement les codes-barres présentant divers problèmes:



Voici un exemple de code C# qui montre comment reconnaître les codes-barres DotCode dans une image capturée par un appareil photo:
/// <summary>
/// Reads DotCode barcodes from a <see cref="System.Drawing.Bitmap"/>.
/// </summary>
/// <param name="bitmap">A bitmap with barcodes.</param>
public static void ReadDotCodeBarcodesFromBitmap(System.Drawing.Bitmap bitmap)
{
    // create barcode reader
    using (Vintasoft.Barcode.BarcodeReader reader = new Vintasoft.Barcode.BarcodeReader())
    {
        // specify that reader must search for DotCode barcodes
        reader.Settings.ScanBarcodeTypes = Vintasoft.Barcode.BarcodeType.DotCode;

        // read barcodes from image
        Vintasoft.Barcode.IBarcodeInfo[] infos = Vintasoft.Barcode.GdiExtensions.ReadBarcodes(reader, bitmap);

        // if barcodes are not detected
        if (infos.Length == 0)
        {
            System.Console.WriteLine("No barcodes found.");
        }
        // if barcodes are detected
        else
        {
            // get information about extracted barcodes

            System.Console.WriteLine(string.Format("{0} barcodes found:", infos.Length));
            System.Console.WriteLine();
            for (int i = 0; i < infos.Length; i++)
            {
                Vintasoft.Barcode.IBarcodeInfo info = infos[i];
                System.Console.WriteLine(string.Format("[{0}:{1}]", i + 1, info.BarcodeType));
                System.Console.WriteLine(string.Format("Value:      {0}", info.Value));
                System.Console.WriteLine(string.Format("Region:     {0}", info.Region));
                System.Console.WriteLine();
            }
        }
    }
}


Quels codes-barres DotCode le VintaSoft Barcode .NET SDK peut-il générer?

VintaSoft Barcode .NET SDK génère tous les types de codes-barres DotCode.

Voici le code C# qui montre comment générer une image bitmap d'un code-barres DotCode:
/// <summary>
/// Returns the DotCode barcode as <see cref="System.Drawing.Bitmap"/>.
/// </summary>
/// <param name="value">The barcode value.</param>
/// <returns>A <see cref="System.Drawing.Bitmap"/> object.</returns>
public static System.Drawing.Bitmap GetDotCodeBarcodeAsBitmap(string value)
{
    // create the barcode writer
    using (Vintasoft.Barcode.BarcodeWriter barcodeWriter = new Vintasoft.Barcode.BarcodeWriter())
    {
        // set barcode writer settings
        barcodeWriter.Settings.Barcode = Vintasoft.Barcode.BarcodeType.DotCode;
        barcodeWriter.Settings.Value = value;

        // get a barcode image as System.Drawing.Bitmap
        return Vintasoft.Barcode.GdiExtensions.GetBarcodeAsBitmap(barcodeWriter);
    }
}


Voici le code C# qui montre comment générer une image vectorielle (SVG) d'un code-barres DotCode:
/// <summary>
/// Returns the DotCode barcode in vector form as a SVG string.
/// </summary>
/// <param name="barcodeValue">Barcode value.</param>
public static void GetDotCodeBarcodeAsSvgString(string barcodeValue)
{
    // create the barcode writer
    using (Vintasoft.Barcode.BarcodeWriter barcodeWriter = new Vintasoft.Barcode.BarcodeWriter())
    {
        // set barcode writer settings
        barcodeWriter.Settings.Barcode = Vintasoft.Barcode.BarcodeType.DotCode;
        barcodeWriter.Settings.Value = barcodeValue;

        // generate DotCode barcode as a SVG string
        return barcodeWriter.GetBarcodeAsSvgFile();
    }
}