Enum HanXinEncodeMode
Το όνομα: Aspose.BarCode.Generation Συγκέντρωση: Aspose.BarCode.dll (25.4.0)
Συνιστάται να χρησιμοποιείτε Auto με ASCII / Κινέζους χαρακτήρες ή Unicode για χαρακτήρες Unicode.
public enum HanXinEncodeMode
Fields
Auto = 0
Στη λειτουργία Auto, το CodeText κρυπτογραφείται με μέγιστη συμμόρφωση δεδομένων.Οι χαρακτήρες Unicode κωδικοποιούνται χρησιμοποιώντας κρυπτογράφηση GB18030 σύμφωνα με τις προδιαγραφές γραμμικού κώδικα HanXin.
Binary = 1
Στην δυαδική λειτουργία, το CodeText κρυπτογραφείται με μέγιστη συμπαγέςτητα δεδομένων.Εάν βρεθεί ένας χαρακτήρας Unicode, μια εξαίρεση ρίχνεται.
ECI = 2
Στη λειτουργία ECI, το σύνολο του μηνύματος κωδικοποιείται εκ νέου στην κωδικοποίηση ECIEnc που καθορίζεται με την ενσωμάτωση ενός αναγνωριστή ECI.Εάν βρεθεί ένας χαρακτήρας που δεν υποστηρίζεται από την επιλεγμένη κωδικοποίηση ECI, ρίχνεται εξαίρεση.Παρακαλούμε σημειώστε ότι ορισμένοι παλαιότεροι (πριν του 2006) σαρωτές ενδέχεται να μην υποστηρίζουν αυτή τη λειτουργία.
Extended = 5
Η διευρυμένη λειτουργία επιτρέπει συνδυασμούς εσωτερικών λειτουργιών: Auto, Binary, Text, Numeric, URI, Unicode, ECI, Common Chinese Region One,Κοινή Κινέζικη Περιφέρεια Δύο, GB18030 Δύο Byte, GB18030 Τέσσερις Byte.Το Codetext μπορεί να κατασκευαστεί με το χέρι με προεπιγραφές και διπλές παραπομπές, για παράδειγμα: @"\auto:abc\000009:ΑΒΓΔΕ\auto:ab\c" ή χρησιμοποιώντας το HanXinExtCodetextBuilder.Εάν το κώδικα κειμένου περιέχει ένα κομμάτι ECI, τότε μόνο οι ακόλουθοι τρόποι μπορούν να είναι στο κώδικα κειμένου μετά το κομμάτι ECI:Αυτόματη, δυαδική, κείμενο, αριθμητική, URI, ECI.
URI = 4
Ο τρόπος URI υποδεικνύει τα δεδομένα που αντιπροσωπεύονται στον κώδικα Han Xin είναι ο ενιαίος αναγνωριστής πόρων (URI)Αναφορά στο RFC 3986.
Unicode = 3
Ο τρόπος Unicode σχεδιάζει έναν τρόπο για να αντιπροσωπεύσει οποιαδήποτε αναφορά δεδομένων κειμένου στην κωδικοποίηση / κάρσετ UTF8 στον κώδικα Han Xin.
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");
}