Enum MaxiCodeEncodeMode

Enum MaxiCodeEncodeMode

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

MaxiCode 条形码的编码模式。

public enum MaxiCodeEncodeMode

字段

Auto = 0

在自动模式下,CodeText 以最大数据紧凑性进行编码。 Unicode 字符在指定的 ECIEncoding 编码中重新编码,并插入 ECI 标识符。 如果找到不受所选 ECI 编码支持的字符,则会抛出异常。

Binary = 4

在二进制模式下,CodeText 以最大数据紧凑性进行编码。 如果找到 Unicode 字符,则会抛出异常。

Bytes = 1

将代码文本编码为普通字节。如果检测到任何 Unicode 字符,该字符将编码为两个字节,先低字节后高字节。

ECI = 5

在 ECI 模式下,整个消息在指定的 ECIEncoding 编码中重新编码,并插入 ECI 标识符。 如果找到不受所选 ECI 编码支持的字符,则会抛出异常。 请注意,一些旧的(2006 年之前)扫描仪可能不支持此模式。

Extended = 3

扩展模式,支持多种 ECI 模式。

最好使用 MaxiCodeExtCodetextBuilder 生成扩展代码文本。

使用 Display2DText 属性设置可见文本以移除管理字符。

ECI 标识符设置为单斜杠和六位数字标识符 "\000026" - UTF8 ECI 标识符

ECI 标识符后的所有 Unicode 字符会自动编码为正确的字符代码集。

ExtendedCodetext = 2

扩展模式,支持多种 ECI 模式。

最好使用 MaxiCodeExtCodetextBuilder 生成扩展代码文本。

使用 Display2DText 属性设置可见文本以移除管理字符。

ECI 标识符设置为单斜杠和六位数字标识符 "\000026" - UTF8 ECI 标识符

ECI 标识符后的所有 Unicode 字符会自动编码为正确的字符代码集。

示例

//自动模式
var codetext = "犬Right狗";
using (var generator = new BarcodeGenerator(EncodeTypes.MaxiCode, codetext))
{
    generator.Parameters.Barcode.MaxiCode.ECIEncoding = ECIEncodings.UTF8;
    generator.Save("test.bmp");
}

//字节模式
byte[] encodedArr = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 };
using (var generator = new BarcodeGenerator(EncodeTypes.MaxiCode))
{
    generator.SetCodetext(encodedArr);
    generator.Parameters.Barcode.MaxiCode.MaxiCodeEncodeMode = MaxiCodeEncodeMode.Binary;
    generator.Save("test.bmp");
}

//扩展代码文本模式
//创建代码文本
MaxiCodeExtCodetextBuilder textBuilder = new MaxiCodeExtCodetextBuilder();
textBuilder.AddECICodetext(ECIEncodings.Win1251, "Will");
textBuilder.AddECICodetext(ECIEncodings.UTF8, "犬Right狗");
textBuilder.AddECICodetext(ECIEncodings.UTF16BE, "犬Power狗");
textBuilder.AddPlainCodetext("Plain text");

//生成代码文本
string codetext = textBuilder.GetExtendedCodetext();    

//生成
using(BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MaxiCode, codetext))
{
    generator.Parameters.Barcode.MaxiCode.MaxiCodeEncodeMode = MaxiCodeEncodeMode.Extended;
    generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text";
	generator.Save("test.bmp");
}
 中文