Class MaxiCodeCodetextMode2

Class MaxiCodeCodetextMode2

Namespace: Aspose.BarCode.ComplexBarcode
Assembly: Aspose.BarCode.dll (25.1.0)

用于编码和解码嵌入在MaxiCode代码中的文本,适用于模式2。

public class MaxiCodeCodetextMode2 : MaxiCodeStructuredCodetext, IComplexCodetext

继承

objectMaxiCodeCodetextMaxiCodeStructuredCodetextMaxiCodeCodetextMode2

实现

IComplexCodetext

继承成员

MaxiCodeStructuredCodetext.GetConstructedCodetext(), MaxiCodeStructuredCodetext.InitFromString(string), MaxiCodeStructuredCodetext.Equals(object), MaxiCodeStructuredCodetext.GetHashCode(), MaxiCodeStructuredCodetext.PostalCode, MaxiCodeStructuredCodetext.CountryCode, MaxiCodeStructuredCodetext.ServiceCategory, MaxiCodeStructuredCodetext.SecondMessage, MaxiCodeCodetext.GetMode(), MaxiCodeCodetext.GetConstructedCodetext(), MaxiCodeCodetext.InitFromString(string), MaxiCodeCodetext.GetBarcodeType(), MaxiCodeCodetext.MaxiCodeEncodeMode, MaxiCodeCodetext.ECIEncoding, object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

示例

该示例演示如何编码和解码模式2的MaxiCode编码文本。

//模式2,带标准的第二消息
MaxiCodeCodetextMode2 maxiCodeCodetext = new MaxiCodeCodetextMode2();
maxiCodeCodetext.PostalCode = "524032140";
maxiCodeCodetext.CountryCode = 056;
maxiCodeCodetext.ServiceCategory = 999;
MaxiCodeStandartSecondMessage maxiCodeStandartSecondMessage = new MaxiCodeStandartSecondMessage();
maxiCodeStandartSecondMessage.Message = "测试消息";
maxiCodeCodetext.SecondMessage = maxiCodeStandartSecondMessage;
using (ComplexBarcodeGenerator complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext))
{
    complexGenerator.GenerateBarCodeImage();
}
//模式2,带结构化的第二消息
MaxiCodeCodetextMode2 maxiCodeCodetext = new MaxiCodeCodetextMode2();
maxiCodeCodetext.PostalCode = "524032140";
maxiCodeCodetext.CountryCode = 056;
maxiCodeCodetext.ServiceCategory = 999;
MaxiCodeStructuredSecondMessage maxiCodeStructuredSecondMessage = new MaxiCodeStructuredSecondMessage();
maxiCodeStructuredSecondMessage.Add("634 ALPHA DRIVE");
maxiCodeStructuredSecondMessage.Add("PITTSBURGH");
maxiCodeStructuredSecondMessage.Add("PA");
maxiCodeStructuredSecondMessage.Year = 99;
maxiCodeCodetext.SecondMessage = maxiCodeStructuredSecondMessage;
using (ComplexBarcodeGenerator complexGenerator = new ComplexBarcodeGenerator(maxiCodeCodetext))
{
    complexGenerator.GenerateBarCodeImage();
}
//解码带标准第二消息的原始编码文本
using (BarCodeReader reader = new BarCodeReader(@"c:\test.png", DecodeType.MaxiCode))
{
     foreach (BarCodeResult result in reader.ReadBarCodes())
    {
        MaxiCodeCodetext resultMaxiCodeCodetext = ComplexCodetextReader.TryDecodeMaxiCode(result.Extended.MaxiCode.MaxiCodeMode, result.CodeText);
        if (resultMaxiCodeCodetext is MaxiCodeCodetextMode2){
            MaxiCodeCodetextMode2 maxiCodeStructuredCodetext = (MaxiCodeCodetextMode2)resultMaxiCodeCodetext;
            Console.WriteLine("条形码类型: " + maxiCodeStructuredCodetext.PostalCode);
            Console.WriteLine("MaxiCode模式: " + maxiCodeStructuredCodetext.CountryCode);
            Console.WriteLine("条形码编码文本: " + maxiCodeStructuredCodetext.ServiceCategory);
            if (maxiCodeStructuredCodetext.SecondMessage is MaxiCodeStandartSecondMessage){
                MaxiCodeStandartSecondMessage secondMessage = (MaxiCodeStandartSecondMessage)maxiCodeStructuredCodetext.SecondMessage;
                Console.WriteLine("消息: " + secondMessage.Message);
            }
        }
    }
}
//解码带结构化第二消息的原始编码文本
using (BarCodeReader reader = new BarCodeReader(@"c:\test.png", DecodeType.MaxiCode))
{
     foreach (BarCodeResult result in reader.ReadBarCodes())
    {
        MaxiCodeCodetext resultMaxiCodeCodetext = ComplexCodetextReader.TryDecodeMaxiCode(result.Extended.MaxiCode.MaxiCodeMode, result.CodeText);
        if (resultMaxiCodeCodetext is MaxiCodeCodetextMode2){
            MaxiCodeCodetextMode2 maxiCodeStructuredCodetext = (MaxiCodeCodetextMode2)resultMaxiCodeCodetext;
            Console.WriteLine("条形码类型: " + maxiCodeStructuredCodetext.PostalCode);
            Console.WriteLine("MaxiCode模式: " + maxiCodeStructuredCodetext.CountryCode);
            Console.WriteLine("条形码编码文本: " + maxiCodeStructuredCodetext.ServiceCategory);
            if (maxiCodeStructuredCodetext.SecondMessage is MaxiCodeStructuredSecondMessage){
                MaxiCodeStructuredSecondMessage secondMessage = (MaxiCodeStructuredSecondMessage)maxiCodeStructuredCodetext.SecondMessage;
                Console.WriteLine("消息:");
                foreach (var identifier in secondMessage.Identifiers){
                    Console.WriteLine(identifier);
                }
            }
        }
    }
}

构造函数

MaxiCodeCodetextMode2()

public MaxiCodeCodetextMode2()

方法

GetMode()

获取MaxiCode模式。

public override MaxiCodeMode GetMode()

返回

MaxiCodeMode

MaxiCode模式

 中文