Создайте и прочитайте QR-код Royal Mail с помощью C#

Штрих-код Royal Mail Mailmark 2D — это машиночитаемый сложный штрих-код, используемый в буквах. Он предоставляет информацию об отслеживании почты и статусе доставки. Он также может включать дополнительную информацию, такую как график доставки и статистику отчетности. В этой статье мы научимся генерировать и читать 2D-штрих-код Royal Mail Mailmark с помощью C#.

В данной статье будут затронуты следующие темы:

  1. C# API для создания и чтения QR-кодов Royal Mail
  2. Что такое королевский штрих-код?
  3. Типы QR-кодов Royal Mail
  4. Создать QR-код Royal Mail
  5. Прочитайте QR-код Royal Mail
  6. Бесплатные учебные ресурсы

C# API для создания и чтения QR-кода Royal Mail

Для создания и чтения QR-кода Royal Mail мы будем использовать API Aspose.BarCode for .NET. Используя API, мы можем генерировать и распознавать широкий спектр 1D и 2D типов штрих-кодов.

Пожалуйста, либо загрузите DLL API, либо установите его с помощью NuGet.

PM> Install-Package Aspose.BarCode

Что такое королевский штрих-код?

Штрих-код Royal Mail представляет собой штрих-код сложной почтовой метки (CMDM). Он был разработан Почтовой системой Великобритании для автоматизации сортировки и отслеживания почты. Он имеет указанный формат кода Data Matrix типа ECC200, соответствующий международному стандарту. Его также называют Кодом клиента Royal Mail для 4 штатов (RM4SCC).

Типы QR-кодов Royal Mail

Существует три типа сложных двумерных штрих-кодов почтовых меток:

  • Тип 7:
    • Буквы
    • Размер штрих-кода: 24 × 24 модуля.
    • Физический размер: 12 × 12 мм.
    • Общее количество символов: 51 символ
    • Использование клиентом: 6 свободных мест
Майлмарк2ДТип7
  • Тип 9:
    • Большие буквы, в том числе буквы из полиэтиленовой пленки.
    • Размер штрих-кода: 32 × 32 модуля.
    • Физический размер: 16 × 16 мм.
    • Общее количество символов: 90 символов
    • Использование клиентами: >25, но максимум 45 свободных мест.
Майлмарк2ДТип9
  • Тип 29:
    • Большие буквы, в том числе буквы из полиэтиленовой пленки.
    • Размер штрих-кода: 16 × 48 модулей.
    • Физический размер: 8 × 24 мм
    • Общее количество символов: 70 символов
    • Общее количество символов: нам нужно 6–25 персонажей клиента.
Майлмарк2ДТип29

Создать штамп со штрих-кодом Royal Mail на C#

Мы можем создать штамп со штрих-кодом Royal Mail, выполнив следующие действия:

  1. Сначала создайте экземпляр класса Mailmark2DCodetext.
  2. Затем установите различные свойства, такие как UPUCountryID, VersionID, Class, ItemID и т. д.
  3. Затем укажите Mailmark2DType как Type7, Type9 или Type29.
  4. Затем создайте экземпляр класса ComplexBarcodeGenerator с объектом Mailmark2DCodetext в качестве аргумента.
  5. После этого задайте размеры штрих-кода.
  6. Наконец, вызовите метод Save, чтобы сохранить изображение штрих-кода на локальном диске.

В следующем примере кода показано, как создать 2D-штрих-код Mailmark типа 7 с помощью C#.

// В этом примере кода показано, как создать 2D-штрих-код Mailmark.
// Инициализация 2D-кода Mailmark
Mailmark2DCodetext mailmark2D = new Mailmark2DCodetext();
mailmark2D.UPUCountryID = "JGB ";
mailmark2D.InformationTypeID = "0";
mailmark2D.VersionID = "1";
mailmark2D.Class = "1";
mailmark2D.SupplyChainID = 123;
mailmark2D.ItemID = 1234;
mailmark2D.DestinationPostCodeAndDPS = "QWE1";
mailmark2D.RTSFlag = "0";
mailmark2D.ReturnToSenderPostCode = "QWE2";

// Кодирование кода почтового знака 2D типа 7
mailmark2D.DataMatrixType = Mailmark2DType.Type_7;
mailmark2D.CustomerContent = "CUSTOM";

// Инициализировать генератор штрих-кода
var generator = new ComplexBarcodeGenerator(mailmark2D);
generator.Parameters.Barcode.XDimension.Pixels = 4;

// Сохранять
generator.Сохранять(@"D:\Files\BarCode\Mailmark2DType7.png");

Прочтите QR-код Royal Mail с помощью C#

Мы можем прочитать QR-код Royal Mail, выполнив следующие действия:

  1. Сначала создайте экземпляр класса BarCodeReader.
  2. Затем укажите путь к входному изображению штрих-кода и DecodeType.
  3. Затем получите BarCodeResult, вызвав метод ReadBarCodes().
  4. После этого декодируйте штрих-код методом TryDecodeMailmark2D().
  5. Наконец, прочтите декодированные свойства объекта Mailmark2DCodetext.

В следующем примере кода показано, как прочитать QR-код Mailmark с помощью C#.

// В этом примере кода показано, как читать 2D-штрих-код Mailmark.
// Распознать код Mailmark 2D
BarCodeReader reader = new BarCodeReader(@"D:\Files\BarCode\Mailmark2DType7.png", DecodeType.DataMatrix);
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    // Декодировать почтовый знак 2D 
    Mailmark2DCodetext mailmarkResult = ComplexCodetextReader.TryDecodeMailmark2D(result.CodeText);
    
    // Читать свойства
    Console.WriteLine($"UPUCountryID:{mailmarkResult.UPUCountryID}");
    Console.WriteLine($"InformationTypeID:{mailmarkResult.InformationTypeID}");
    Console.WriteLine($"VersionID:{mailmarkResult.VersionID}");
    Console.WriteLine($"Class:{mailmarkResult.Class}");
    Console.WriteLine($"SupplyChainID:{mailmarkResult.SupplyChainID}");
    Console.WriteLine($"ItemID:{mailmarkResult.ItemID}");
    Console.WriteLine($"DestinationPostCodeAndDPS:{mailmarkResult.DestinationPostCodeAndDPS}");
    Console.WriteLine($"RTSFlag:{mailmarkResult.RTSFlag}");
    Console.WriteLine($"ReturnToSenderPostCode:{mailmarkResult.ReturnToSenderPostCode}");
    Console.WriteLine($"CustomerContent:{mailmarkResult.CustomerContent}");
}
UPUCountryID:JGB
InformationTypeID:0
VersionID:1
Class:1
SupplyChainID:123
ItemID:1234
DestinationPostCodeAndDPS:QWE1
RTSFlag:0
ReturnToSenderPostCode:QWE2
CustomerContent:CUSTOM DATA

Получите бесплатную лицензию

Вы можете получить бесплатную временную лицензию, чтобы опробовать библиотеку без ограничений ознакомительной версии.

Библиотека 2D-штрих-кодов Mailmark — учебные ресурсы

Помимо создания и чтения QR-кодов Royal Mail, вы можете узнать больше о различных других функциях Aspose.BarCode, используя ресурсы, приведенные ниже:

Заключение

В этой статье мы узнали, как создать QR-код Royal Mail и сохранить изображения штрих-кода на диске. Мы также увидели, как программно прочитать сгенерированный штрих-код Mailmark 2D. Кроме того, вы можете узнать больше об Aspose.BarCode for .NET API, используя документацию. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на нашем бесплатном форуме поддержки.

Смотрите также