Gere e leia o código de barras 2D do Royal Mail Mailmark usando C#

O código de barras Royal Mail Mailmark 2D é um código de barras Complex Mail Data Mark (CMDM) legível por máquina usado em cartas. Ele fornece informações sobre rastreamento de correio e status de entrega. Também pode incluir informações adicionais, como cronograma de entrega e estatísticas de relatórios. Neste artigo, aprenderemos como gerar e ler códigos de barras 2D do Royal Mail Mailmark usando C#.

Os seguintes tópicos serão abordados neste artigo:

API C# para gerar e ler códigos de barras 2D do Royal Mail Mailmark

Para gerar e ler códigos de barras 2D do Royal Mail Mailmark, usaremos a API Aspose.BarCode for .NET. Permite gerar e reconhecer uma ampla gama de 1D e 2D tipos de código de barras. Por favor, baixe a DLL da API ou instale-a usando NuGet.

PM> Install-Package Aspose.BarCode

Gerar código de barras 2D do Royal Mail Mailmark usando C#

Existem três tipos de códigos de barras 2D Complex Mail Data Mark:

  • Tipo 7:
    • Cartas
    • Tamanho do código de barras: 24 × 24 módulos
    • Tamanho físico: 12 × 12 mm
    • Contagem total de caracteres: 51 caracteres
    • Uso do cliente: 6 vagas de reposição
Mailmark2DType7
  • Tipo 9:
    • Letras grandes, incluindo envoltório poli cartas.
    • Tamanho do código de barras: 32 × 32 módulos
    • Tamanho físico: 16 × 16 mm
    • Contagem total de caracteres: 90 caracteres
    • Uso do cliente: >25, mas no máximo 45 espaços de reposição
Mailmark2DType9
  • Tipo 29:
    • Letras grandes, incluindo letras poly wrap.
    • Tamanho do código de barras: 16 × 48 módulos
    • Tamanho físico: 8 × 24 mm
    • Contagem total de caracteres: 70 caracteres
    • Contagem total de caracteres: precisa de 6 a 25 caracteres do cliente
Mailmark2DType29

Podemos gerar o código de barras 2D do Royal Mail Mailmark seguindo as etapas abaixo:

  1. Em primeiro lugar, crie uma instância da classe Mailmark2DCodetext.
  2. Em seguida, defina várias propriedades, como UPUCountryID, VersionID, Class, ItemID, etc.
  3. Em seguida, defina Mailmark2DType como Type7, Type9 ou Type29.
  4. Em seguida, crie uma instância da classe ComplexBarcodeGenerator com o objeto Mailmark2DCodetext como um argumento.
  5. Depois disso, defina as dimensões do código de barras.
  6. Finalmente, chame o método Save para salvar a imagem do código de barras no disco local.

O exemplo de código a seguir demonstra como gerar um código de barras Mailmark 2D do tipo 7 usando C#.

// Este exemplo de código demonstra como gerar o código de barras 2D do Mailmark
// Inicializar o código 2D do 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";

// Codificar código Mailmark 2D Tipo 7
mailmark2D.DataMatrixType = Mailmark2DType.Type_7;
mailmark2D.CustomerContent = "CUSTOM";

// Inicializar o gerador de código de barras
var generator = new ComplexBarcodeGenerator(mailmark2D);
generator.Parameters.Barcode.XDimension.Pixels = 4;

// Salvar
generator.Salvar(@"D:\Files\BarCode\Mailmark2DType7.png");

Leia o código de barras 2D do Royal Mail Mailmark usando C#

Podemos ler o código de barras 2D do Royal Mail Mailmark seguindo as etapas abaixo:

  1. Primeiramente, crie uma instância da classe BarCodeReader.
  2. Em seguida, forneça o caminho da imagem do código de barras de entrada e o DecodeType.
  3. Em seguida, obtenha o BarCodeResult chamando o método ReadBarCodes().
  4. Depois disso, decodifique o código de barras usando o método TryDecodeMailmark2D().
  5. Por fim, leia as propriedades decodificadas do objeto Mailmark2DCodetext.

O exemplo de código a seguir demonstra como ler um código de barras 2D do Mailmark usando C#.

// Este exemplo de código demonstra como ler o código de barras 2D do Mailmark
// Reconhecer código 2D do Mailmark
BarCodeReader reader = new BarCodeReader(@"D:\Files\BarCode\Mailmark2DType7.png", DecodeType.DataMatrix);
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    // Decodificar marca postal 2D 
    Mailmark2DCodetext mailmarkResult = ComplexCodetextReader.TryDecodeMailmark2D(result.CodeText);
    
    // Ler propriedades
    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

Obtenha uma licença gratuita

Você pode obter uma licença temporária gratuita para experimentar a biblioteca sem limitações de avaliação.

Conclusão

Neste artigo, aprendemos como gerar códigos de barras 2D do Royal Mail Mailmark e salvar imagens de códigos de barras no disco. Também vimos como ler os códigos de barras 2D do Mailmark gerados programaticamente. Além disso, você pode aprender mais sobre Aspose.BarCode para .NET API usando a documentação. Em caso de qualquer ambiguidade, não hesite em contactar-nos no fórum.

Veja também