Enum HanXinEncodeMode
İsim alanı : Aspose.BarCode.Generation Toplama: Aspose.BarCode.dll (25.4.0)
Han Xin Kodu kodlama modu. ASCII / Çin karakterleri ile Auto veya Unicode Unicode karakterleri ile kullanılması tavsiye edilir.
public enum HanXinEncodeMode
Fields
Auto = 0
Otomatik modda, CodeText maksimum veri kompaktliği ile kodlanır.Unicode karakterleri, HanXin çubuk kodu özelliklerine göre GB18030 kodlama kullanılarak kodlanır.
Binary = 1
İkili modda, CodeText maksimum veri kompaktliği ile kodlanır.Bir Unicode karakter bulursanız, bir istisna atılır.
ECI = 2
ECI modunda, tüm mesaj, ECI tanımlayıcısının yerleştirilmesi ile ECIEcoding belirtilen kodlamada yeniden kodlanır.Seçilen ECI kodlaması tarafından desteklenmeyen bir karakter bulunursa, bir istisna atılır.Lütfen bazı eski (2006’dan önce) tarayıcılar bu modu desteklemiyor olabilir.
Extended = 5
Genişletilmiş mod, iç modların kombinasyonlarını sağlar: Auto, Binary, Text, Numeric, URI, Unicode, ECI, Common Chinese Region One,Ortak Çin Bölgesi İki, GB18030 İki Byte, GB18030 Dört Byte.Codetext manuel olarak prefiksler ve çifte backslashler ile oluşturulabilir, örneğin: @"\auto:abc\000009:ΑΒΓΔΕ\auto:ab\c" veya HanXinExtCodetextBuilder kullanılarak.Eğer kod metni bir ECI parçası içeriyorsa, o kod metni ECI parçasından sonra yalnızca aşağıdaki modlarda bulunabilir:Otomatik, ikili, metin, sayısal, URI, ECI
URI = 4
URI modu, Han Xin Kodu’nda temsil edilen verileri Uniform Resource Identifier (URI) olarak gösterir.RFC 3986 için yorum yapın.
Unicode = 3
Unicode modu, Han Xin Kodu’nda UTF8 kodlama/şarset için herhangi bir metin veri referansını temsil etmenin bir yolunu tasarlar.
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");
}