VintaSoft Barcode .NET SDK を使用して Aztec バーコードを認識および生成します

ブログ カテゴリ: バーコード.NET

2025/07/16

VintaSoft Barcode .NET SDK は、Windows、Linux、macOS 用の専門的なクロスプラットフォーム SDK であり、.NET、WPF、Web、MAUI で Aztec Code バーコードを認識および生成できます。VintaSoft Barcode .NET SDK を使用すると、わずか数行のコードを使用して Aztec Code バーコードの認識と生成の機能を埋め込むことができます。


Aztec Code バーコードとは何ですか?

アズテックコードバーコードは、最もコンパクトな2次元マトリックスバーコードです。フリーゾーンがなく、検索パターンがコンパクトなため、他のマトリックスバーコードよりもスペースを節約できます。 Aztec Code バーコードの特徴は、バーコードの中央にあるユニークな正方形の検索パターン「ブルズアイ」です。


Aztec Code バーコードの特徴

Aztec Code バーコードは、2008 年の ISO/IEC 24778 標準で定義されています。Aztec Code バーコードは、次の 3 つのエンコード モードで異なるタイプの混合データを保存できます。

Aztec Code バーコードは、破損したバーコードを認識できるリード ソロモン エラー訂正アルゴリズムを使用します。バーコードを作成するときに、ユーザーはエラー訂正コードワードが使用するデータ領域のパーセンテージを指定できます。

GS1 標準のサポートにより、GS1 形式 (BarcodeSymbologySubsets.GS1Aztec) でデータをエンコードできます。

Aztec Code バーコードでは、次の特殊文字をエンコードできます。


「Aztec Rune」バーコードとは何ですか?

Aztec Code バーコードには、Aztec Rune という特別なバージョンがあり、0 から 255 までの範囲の 1 つの数字 (1 バイト) のみをエンコードできます。


Aztec Rune バーコードは 11x11 モジュールのコンパクトなサイズで、製造工程でラベルとして使用できます。たとえば、梱包の向きを制御したり、商品の完全性を制御したりするために使用できます。このラベルは、画像上に方向付けされた参照ポイントを作成するためにも使用できます。VintaSoft Barcode .NET SDK は、認識されたバーコードの検索パターンの中心の正確な座標を提供します: AztecInfo.BulleyeCenter

この機能は、OMR フォームで OMR フォームを高速に自動認識するためにも使用できます。Aztec Rune バーコードを使用した自動画像配置の詳細については、記事 .NET/C# で画像を配置するための 2D バーコードを使用する を参照してください。


Aztec バーコード マトリックスの構造

Aztec Code バーコード マトリックスには、フルサイズとコンパクトの 2 つのバージョンがあります。コンパクト バージョンは最大 4 つのデータ レイヤー (フルサイズは最大 32 レイヤー) を持つことができ、縮小された検索パターンとタイミング パターンがないことで区別されます:
     


「GS1 Aztec」バーコードとは何ですか?

"GS1 Aztec" バーコードは、GS1 システム データの形式で値を保存する Aztec バーコードです。VintaSoft バーコード。NET SDK は、「GS1 Aztec」バーコードを生成および認識できます。
「GS1 Aztec」バーコードの画像は次のとおりです。


「XFA 圧縮 Aztec」バーコードとは何ですか?

「XFA 圧縮 Aztec」バーコードは、Adobe XFA 仕様に従って圧縮されたデータを保存する Aztec バーコードです。VintaSoft Barcode .NET SDK は、「XFA 圧縮 Aztec」バーコードを生成および認識できます。
「XFA 圧縮 Aztec」バーコードの画像は次のとおりです。


「HIBC LIC Aztec」バーコードとは何ですか?

「HIBC LIC Aztec」バーコードは、識別目的でヘルスケア製品のラベルに使用される Aztec バーコードのサブセットです。VintaSoft Barcode .NET SDK は、「HIBC LIC Aztec」バーコードを生成および認識できます。
「HIBC LIC Aztec」バーコードの画像はこちらです。


Aztec Codeバーコードは、特殊な「構造追加」シンボルのおかげで、単なる正方形以上のものになります。

Aztec Codeバーコードは、特殊な「構造追加」シンボルをサポートしており、これによりデータを複数のAztec Codeバーコードに分割できます。「構造追加」シンボルはバーコードにエンコードされており、バーコード部分の数と順序を一意に決定できます。

Aztec Code バーコードにはフリーゾーンがないため、長方形の Aztec Code バーコードを作成して細長い領域をマークすることができます。


VintaSoft Barcode .NET SDK には、「構造追加」シンボルを使用して分離された Aztec Code バーコード部分セットからデータを回復するためのアルゴリズムが含まれています。


VintaSoft Barcode .NET SDK はどのような Aztec バーコードを認識できますか?

VintaSoft Barcode .NET SDK は、すべての種類の Aztec Code および Aztec Rune バーコードを認識します。認識には独自のアルゴリズムが使用されるため、さまざまな問題を抱えたバーコードをすばやく認識できます。



カメラでキャプチャした画像内の Aztec バーコードを認識する方法を示す C# コードは次のとおりです。
/// <summary>
/// Reads Aztec Code barcodes from a <see cref="System.Drawing.Bitmap"/>.
/// </summary>
/// <param name="bitmap">A bitmap with barcodes.</param>
public static void ReadAztecCodeBarcodesFromBitmap(System.Drawing.Bitmap bitmap)
{
    // create barcode reader
    using (Vintasoft.Barcode.BarcodeReader reader = new Vintasoft.Barcode.BarcodeReader())
    {
        // specify that reader must search for Aztec barcodes
        reader.Settings.ScanBarcodeTypes = Vintasoft.Barcode.BarcodeType.Aztec;

        // 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();
            }
        }
    }
}


VintaSoft Barcode .NET SDK はどのような Aztec バーコードを生成できますか?

VintaSoft Barcode .NET SDK は、あらゆる種類の Aztec Code および Aztec Rune バーコードを生成します。

Aztec Code バーコードのラスター イメージを生成する方法を示す C# コードを以下に示します。
/// <summary>
/// Returns the Aztec Code 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 GetAztecCodeBarcodeAsBitmap(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.Aztec;
        barcodeWriter.Settings.Value = value;

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


Aztec Code バーコードのベクター (SVG) イメージを生成する方法を示す C# コードを以下に示します。
/// <summary>
/// Returns the Aztec Code barcode in vector form as a SVG string.
/// </summary>
/// <param name="barcodeValue">Barcode value.</param>
public static void GetAztecCodeBarcodeAsSvgString(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.Aztec;
        barcodeWriter.Settings.Value = barcodeValue;

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