Enum HanXinEncodeMode

Enum HanXinEncodeMode

اسم الفضاء : Aspose.BarCode.Generation تجميع: Aspose.BarCode.dll (25.4.0)

يُنصح باستخدام أوتوماتيك مع الأحرف ASCII / الصينية أو Unicode للأحرف Unicode.

public enum HanXinEncodeMode

Fields

Auto = 0

في الوضع التلقائي ، يتم ترميز CodeText بأقصى قدر من صحة البيانات.يتم ترميز الأحرف Unicode باستخدام ترميز GB18030 وفقًا لمواصفات رمز الشريط HanXin.

Binary = 1

في الوضع الثنائي ، يتم ترميز CodeText بأقصى قدر من صحة البيانات.إذا تم العثور على شخصية Unicode ، يتم رمي استثناء.

ECI = 2

في وضع ECI ، يتم إعادة ترميز الرسالة بأكملها في ECIEincoding المحدد التشفير مع إدراج معرف ECI.إذا تم العثور على شخصية لا تدعمها رمز ECI المحدد ، يتم إلقاء استثناء.يرجى ملاحظة أن بعض الماسح الضوئي القديم (قبل 2006) قد لا يدعم هذا الوضع.

Extended = 5

الوضع الموسع يسمح بمزيج من الوضع الداخلي: التلقائي، الثنائي، النص، الرقمي، URI، Unicode، ECI، المنطقة الصينية المشتركة واحدة،المنطقة الصينية المشتركة اثنين، GB18030 اثنين بايت، GB18030 أربعة بايت.يمكن إنشاء Codetext يدوياً باستخدام المسببات والخلفيات المزدوجة، على سبيل المثال: @"\auto:abc\000009:ΑΒΓΔΕ\auto:ab\c" أو باستخدام HanXinExtCodetextBuilder.إذا كان النص المشترك يحتوي على قطعة ECI، ثم فقط الوضعات التالية يمكن أن تكون في هذا النص المشترك بعد قطعة ECI:التلقائي، الثنائي، النص، الرقمي، URI، ECI.

URI = 4

وضع URI يشير إلى البيانات التي تمثلها في هان شين رمز هو واحد التعرف على الموارد (URI)إشارة إلى RFC 3986.

Unicode = 3

وضع Unicode تصميم طريقة لتمثيل أي إشارة البيانات النصية إلى UTF8 التشفير / تشارسيه في Han Xin Code.

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");
}
 عربي