Enum HanXinEncodeMode
Der Name: Aspose.BarCode.Generation Zusammensetzung: Aspose.BarCode.dll (25.4.0)
Es wird empfohlen, Auto mit ASCII / chinesischen Zeichen oder Unicode für Unicode Zeichen zu verwenden.
public enum HanXinEncodeMode
Fields
Auto = 0
Im Auto-Modus wird der CodeText mit maximaler Datenkompaktheit verschlüsselt.Unicode Zeichen werden mit GB18030 Verschlüsselung nach HanXin Barcode Spezifikation verschlüsselt.
Binary = 1
In Binärmodus wird der CodeText mit maximaler Datenkompaktheit verschlüsselt.Wenn ein Unicode-Charakter gefunden wird, wird eine Ausnahme gestohlen.
ECI = 2
Im ECI-Modus wird die gesamte Nachricht in der ECIEcoding angegebenen Codierung mit der Einführung eines ECI-Identifikators neu verschlüsselt.Wenn ein Charakter gefunden wird, der nicht durch die ausgewählte ECI-Codierung unterstützt wird, wird eine Ausnahme gestohlen.Bitte beachten Sie, dass einige alte (vor 2006) Scanners diesen Modus nicht unterstützen.
Extended = 5
Extended Mode ermöglicht Kombinationen von internen Modus: Auto, Binary, Text, Numeric, URI, Unicode, ECI, Common Chinese Region One,Gemeinsame chinesische Region zwei, GB18030 zwei Byte, GB18030 vier Byte.Codetext kann manuell mit Prefix und doppelten Backslashs erstellt werden, z. B.: @"\auto:abc\000009:ΑΒΓΔΕ\auto:ab\c" oder mit dem HanXinExtCodetextBuilder.Wenn der Codetext ein ECI-Fragment enthält, können nur die folgenden Modalitäten in diesem Codetext nach dem ECI-Fragment sein:Auto, Binär, Text, Numerisch, URI, ECI.
URI = 4
URI-Modus zeigt die in Han Xin Code dargestellten Daten als Uniform Resource Identifier (URI) an)Der RFC 3986.
Unicode = 3
Unicode-Modus enthält einen Weg, um alle Textdatenreferenzen auf UTF8-Coding/Charset in Han Xin Code darzustellen.
Examples
// Auto mode
var codetext = "1234567890ABCDEFGabcdefg,Han Xin Code";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, codetext))
{
generator.Save("test.bmp");
}
// Binary mode
byte[] encodedArr = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 };
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin))
{
generator.SetCodetext(encodedArr);
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.Binary;
generator.Save("test.bmp");
}
// ECI mode
var codetext = "ΑΒΓΔΕ";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, codetext))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.ECI;
generator.Parameters.Barcode.HanXin.HanXinECIEncoding = ECIEncodings.ISO_8859_7;
generator.Save("test.bmp");
}
// Unicode mode
var codetext = "abcd АБВ ıntəˈnæʃənəl テスト 안녕하세요 테스트 테스트";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, codetext))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.Unicode;
generator.Save("test.bmp");
}
// URI mode
var codetext = "https://www.test.com/%BC%DE%%%ab/search=test";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, codetext))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.URI;
generator.Save("test.bmp");
}
// Extended mode
var str = @"\gb180302b:漄\gb180304b:㐁\region1:全\region2:螅\numeric:123\text:qwe\unicode:ıntəˈnæʃənəl" +
@"\000009:ΑΒΓΔΕ\auto:abc\binary:abc\uri:backslashes_should_be_doubled\\000555:test";
var expectedStr = @"漄㐁全螅123qweıntəˈnæʃənəlΑΒΓΔΕabcabcbackslashes_should_be_doubled\000555:test";
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, str))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.Extended;
generator.Save("test.bmp");
}
// Using HanXinExtCodetextBuilder for Extended mode (same codetext as in previous example)
//create codetext
var codeTextBuilder = new HanXinExtCodetextBuilder();
codeTextBuilder.AddGB18030TwoByte("漄");
codeTextBuilder.AddGB18030FourByte("㐁");
codeTextBuilder.AddCommonChineseRegionOne("全");
codeTextBuilder.AddCommonChineseRegionTwo("螅");
codeTextBuilder.AddNumeric("123");
codeTextBuilder.AddText("qwe");
codeTextBuilder.AddUnicode("ıntəˈnæʃənəl");
codeTextBuilder.AddECI("ΑΒΓΔΕ", 9);
codeTextBuilder.AddAuto("abc");
codeTextBuilder.AddBinary("abc");
codeTextBuilder.AddURI(@"backslashes_should_be_doubled\000555:test");
var expectedStr = @"漄㐁全螅123qweıntəˈnæʃənəlΑΒΓΔΕabcabcbackslashes_should_be_doubled\000555:test";
//generate codetext
var str = codeTextBuilder.GetExtendedCodetext();
//generate
using (var generator = new BarcodeGenerator(EncodeTypes.HanXin, str))
{
generator.Parameters.Barcode.HanXin.HanXinEncodeMode = HanXinEncodeMode.Extended;
generator.Save("test.bmp");
}