Как сканировать прямоугольные микро- QR-коды с помощью Aspose.BarCode для .NET

Как сканировать прямоугольные микро- QR-коды с помощью Aspose.BarCode для .NET

В этой статье объясняется, как сканировать и декодировать Ректунгулярные микро-КР коды (rMQR) с помощью Aspose.BarCode для .NET. Rectangular Micro QR является компактным вариантом КР с прямоугольной формой, идеально подходит для пространственно ограниченного обозначения, электроники и контроля над документами.

Реальные мировые проблемы

Когда баркоды должны соответствовать ограниченной высоте или ограниченному широте пространствам — например, на кабелях, печатных панелях или билетах — стандартные QR или Micro QR форматы не идеальны.

Решение обзор

Aspose.BarCode для .NET полностью поддерживает обнаружение и распознавание кодов rMQR DecodeType.RMQR, И API будет обрабатывать прямоугольные микро-КР-коды из любого поддерживаемого изображения или потока.

Предупреждения

Прежде чем начать, убедитесь, что у вас есть:

  • Visual Studio 2019 или позднее
  • .NET 6.0 или более поздний (или .NET Framework 4.6.2+)
  • Aspose.BarCode для .NET установлен через NuGet
  • Основное знание C#
PM> Install-Package Aspose.BarCode

Step-by-Step реализация

Шаг 1: Инсталляция и настройка Aspose.BarCode

Добавьте пакет Aspose.BarCode и включайте необходимое название пространства:

using Aspose.BarCode.BarCodeRecognition;

Шаг 2: Подготовьте свои входные данные

Получите файл изображения, содержащий ректонгулярный микро-КР-код (например, `rmqr_sample.png").

string imagePath = "rmqr_sample.png";

Шаг 3: Настройка опций распознавания rMQR

Настроить читатель, чтобы конкретно искать ректонговые микро-КР коды:

BarCodeReader reader = new BarCodeReader(imagePath, DecodeType.RMQR);

Шаг 4: выполнение процесса сканирования rMQR

foreach (BarCodeResult result in reader.ReadBarCodes())
{
    Console.WriteLine($"Type: {result.CodeTypeName}");
    Console.WriteLine($"Text: {result.CodeText}");
}

Шаг 5: Управление выходом и валидацией

Используйте декодированные данные RMQR по мере необходимости (например, частичные номера, производственные коды, логистические данные).

Шаг 6: Управление ошибками

try
{
    using (BarCodeReader reader = new BarCodeReader(imagePath, DecodeType.RMQR))
    {
        foreach (BarCodeResult result in reader.ReadBarCodes())
        {
            Console.WriteLine($"Type: {result.CodeTypeName}");
            Console.WriteLine($"Text: {result.CodeText}");
        }
    }
}
catch (Exception ex)
{
    Console.WriteLine($"Error: {ex.Message}");
}

Полный пример

using Aspose.BarCode.BarCodeRecognition;
using System;

class Program
{
    static void Main()
    {
        string imagePath = "rmqr_sample.png";
        try
        {
            using (BarCodeReader reader = new BarCodeReader(imagePath, DecodeType.RMQR))
            {
                foreach (BarCodeResult result in reader.ReadBarCodes())
                {
                    Console.WriteLine($"Type: {result.CodeTypeName}");
                    Console.WriteLine($"Text: {result.CodeText}");
                }
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Error: {ex.Message}");
        }
    }
} 

Используйте случаи и приложения

  • Space-constrained Labeling: Электроника, PCB производство, кабельное обозначение
  • Безопасное отслеживание документов: Уникальные идентификаторы в ограниченных маргинах или небольших формах
  • Билеты на события: компактный прямоугольный код для быстрого сканирования

Общие вызовы и решения

Проблема 1: РМКР не обнаруженРешение: Убедитесь, что качество изображения достаточно высокое для размеров кода; используйте правильное освещение.

Проблема 2: Другие типы баркода присутствуютРешение: Ограничение сканирования к rMQR DecodeType.RMQR.

Проблема 3: Декодированный текст неверный или неполныйРешение: Проверьте физические повреждения шрифта и убедитесь, что он не печатается слишком маленьким.

Рассмотрим производительность

  • Используйте четкие изображения высокого разрешения
  • Наличие читательских инстанций после использования
  • Бач обрабатывает изображения в памяти при сканировании по шкале

Лучшие практики

  • Ограничение декодирования к rMQR, если существуют другие типы
  • Тест-сканирование с различными версиями и расположениями rMQR
  • Запись всех выходов для аудита и отслеживаемости
  • Используйте структурированную обработку исключений во всех производственных кодах

Развитые сценарии

Батч сканирование rMQR с потока

using (FileStream fs = File.OpenRead(imagePath))
using (BarCodeReader reader = new BarCodeReader(fs, DecodeType.RMQR))
{
    foreach (BarCodeResult result in reader.ReadBarCodes())
    {
        Console.WriteLine(result.CodeText);
    }
}

Сбор данных RMQR для производственного рабочего потока

List<string> partNumbers = new List<string>();
using (BarCodeReader reader = new BarCodeReader(imagePath, DecodeType.RMQR))
{
    foreach (BarCodeResult result in reader.ReadBarCodes())
    {
        partNumbers.Add(result.CodeText);
    }
}
// Process partNumbers as needed

Заключение

Aspose.BarCode для .NET позволяет надежно сканировать прямоугольные микро-КР-коды, позволяя компактным, эффективным маркировкам и безопасному управлению данными для пространственно ограниченных приложений.

Для получения дополнительной информации см. Aspose.BarCode Огневая ссылка .

 Русский