Enum DataMatrixEncodeMode

DataMatrixEncodeMode enumeration

DataMatrix encoder’s encoding mode, default to Auto

public enum DataMatrixEncodeMode

Values

NameValueDescription
Auto0In Auto mode, the CodeText is encoded with maximum data compactness. Unicode characters are re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier. If a character is found that is not supported by the selected ECI encoding, an exception is thrown.
ASCII1Encodes one alphanumeric or two numeric characters per byte
Bytes6Encode 8 bit values
C408Uses C40 encoding. Encodes Upper-case alphanumeric, Lower case and special characters
Text9Uses Text encoding. Encodes Lower-case alphanumeric, Upper case and special characters
EDIFACT10Uses EDIFACT encoding. Uses six bits per character, encodes digits, upper-case letters, and many punctuation marks, but has no support for lower-case letters.
ANSIX1211Uses ANSI X12 encoding.
ExtendedCodetext12ExtendedCodetext mode allows to manually switch encodation schemes and ECI encodings in codetext.
Extended13ExtendedCodetext mode allows to manually switch encodation schemes and ECI encodings in codetext.
Base25614Encode 8 bit values
Binary15In Binary mode, the CodeText is encoded with maximum data compactness. If a Unicode character is found, an exception is thrown.
ECI16In ECI mode, the entire message is re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier. If a character is found that is not supported by the selected ECI encoding, an exception is thrown. Please note that some old (pre 2006) scanners may not support this mode.

Examples

This sample shows how to do codetext in Extended Mode.

[C#]
//Auto mode
string codetext = "犬Right狗";
using (var generator = new BarcodeGenerator(EncodeTypes.DataMatrix, codetext))
{
    generator.Parameters.Barcode.DataMatrix.ECIEncoding = ECIEncodings.UTF8;
    generator.Save("test.bmp");
}

//Bytes mode
byte[] encodedArr = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 };
using (var generator = new BarcodeGenerator(EncodeTypes.DataMatrix))
{
    generator.SetCodetext(encodedArr);
    generator.Parameters.Barcode.DataMatrix.DataMatrixEncodeMode = DataMatrixEncodeMode.Binary;
    generator.Save("test.bmp");
}


//Extended codetext mode
//create codetext
DataMatrixExtCodetextBuilder textBuilder = new DataMatrixExtCodetextBuilder();
codetextBuilder.AddECICodetextWithEncodeMode(ECIEncodings.Win1251, DataMatrixEncodeMode.Bytes, "World");
codetextBuilder.AddPlainCodetext("Will");
codetextBuilder.AddECICodetext(ECIEncodings.UTF8, "犬Right狗");
codetextBuilder.AddCodetextWithEncodeMode(DataMatrixEncodeMode.C40, "ABCDE");

//generate codetext
string codetext = textBuilder.GetExtendedCodetext();    

//generate
using(BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.DataMatrix, codetext))
{
    generator.Parameters.Barcode.DataMatrix.DataMatrixEncodeMode = DataMatrixEncodeMode.Extended;
	generator.Save("test.bmp");
}

See Also