Enum QREncodeMode

Enum QREncodeMode

Tên không gian: Aspose.BarCode.Generation Tổng hợp: Aspose.BarCode.dll (25.4.0)

Chế độ mã hóa cho QR barcodes.

public enum QREncodeMode

Fields

Auto = 0

Trong chế độ tự động, CodeText được mã hóa với độ nhỏ gọn dữ liệu tối đa.Các ký tự Unicode được mã hóa trong chế độ kanji nếu có thể, hoặc chúng được mã hóa lại trong ECIEcoding cụ thể mã hóa với việc nhập một ECI ID.Nếu một nhân vật được tìm thấy không được hỗ trợ bởi mã hóa ECI đã chọn, một ngoại lệ được ném.

Binary = 7

Trong chế độ nhị phân, CodeText được mã hóa với độ nhỏ gọn dữ liệu tối đa.Nếu một nhân vật Unicode được tìm thấy, một ngoại lệ được ném ra.

Bytes = 1

Nếu nó phát hiện bất kỳ nhân vật Unicode, nhân vật sẽ được mã hóa như hai byte, thấp hơn byte đầu tiên.

ECI = 8

Trong chế độ ECI, toàn bộ thông điệp được mã hóa lại trong ECIEcoding cụ thể mã hóa với việc nhập một ID ECI.Nếu một nhân vật được tìm thấy không được hỗ trợ bởi mã hóa ECI đã chọn, một ngoại lệ được ném.Xin lưu ý rằng một số máy quét cũ (trước năm 2006) có thể không hỗ trợ chế độ này.chế độ này không được hỗ trợ bởi mã thanh MicroQR.

ECIEncoding = 4

Mã văn bản với giá trị được thiết lập trong tài sản mã hóa ECIE. Nó có thể là vấn đề với một số máy quét mã vạch cũ (trước năm 2006) .chế độ này không được hỗ trợ bởi mã thanh MicroQR.

Extended = 6

Chế độ kênh mở rộng hỗ trợ FNC1 vị trí đầu tiên, FNC1 vị trí thứ hai và nhiều chế độ ECI.

Tốt hơn là sử dụng QrExtCodetextBuilder cho thế hệ codetext mở rộng.

Sử dụng thuộc tính Display2DText để thiết lập văn bản hiển thị để loại bỏ các ký tự quản lý.

Các nguyên tắc mã hóa:

Tất cả các biểu tượng “" phải được tăng gấp đôi “" trong văn bản mã.

FNC1 ở vị trí đầu tiên được đặt trong codetext như “

FNC1 ở vị trí thứ hai được đặt trong văn bản mã như “<FNC1( giá trị)>”. Giá trị phải là biểu tượng duy nhất (a-z, A-Z) hoặc số từ 0 đến 99.

Group Separator cho chế độ FNC1 được thiết lập như 0x1D nhân vật ‘\u001D’

Nếu bạn cần phải nhập dòng “” vào mã thanh, hãy viết nó dưới dạng ‘<\ FNC2>’

Các ID ECI được thiết lập như một slash và sáu số ID “\000026” - UTF8 ID ECI

Để vô hiệu hóa chế độ ECI hiện tại và chuyển sang chế độ mặc định JIS8 chế độ zero ECI indetifier được thiết lập. “\000000”

Tất cả các ký tự unicode sau khi nhận dạng ECI được mã hóa tự động vào codeset ký tự chính xác.

chế độ này không được hỗ trợ bởi mã thanh MicroQR.

ExtendedCodetext = 5

Chế độ kênh mở rộng hỗ trợ FNC1 vị trí đầu tiên, FNC1 vị trí thứ hai và nhiều chế độ ECI.

Tốt hơn là sử dụng QrExtCodetextBuilder cho thế hệ codetext mở rộng.

Sử dụng thuộc tính Display2DText để thiết lập văn bản hiển thị để loại bỏ các ký tự quản lý.

Các nguyên tắc mã hóa:

Tất cả các biểu tượng “" phải được tăng gấp đôi “" trong văn bản mã.

FNC1 ở vị trí đầu tiên được đặt trong codetext như “

FNC1 ở vị trí thứ hai được đặt trong văn bản mã như “<FNC1( giá trị)>”. Giá trị phải là biểu tượng duy nhất (a-z, A-Z) hoặc số từ 0 đến 99.

Group Separator cho chế độ FNC1 được thiết lập như 0x1D nhân vật ‘\u001D’

Nếu bạn cần phải nhập dòng “” vào mã thanh, hãy viết nó dưới dạng ‘<\ FNC2>’

Các ID ECI được thiết lập như một slash và sáu số ID “\000026” - UTF8 ID ECI

Để vô hiệu hóa chế độ ECI hiện tại và chuyển sang chế độ mặc định JIS8 chế độ zero ECI indetifier được thiết lập. “\000000”

Tất cả các ký tự unicode sau khi nhận dạng ECI được mã hóa tự động vào codeset ký tự chính xác.

chế độ này không được hỗ trợ bởi mã thanh MicroQR.

Utf16BEBOM = 3

Mã văn bản với UTF8 mã hóa với nhân vật ByteOfMark đầu tiên. nó có thể là vấn đề với một số quét mã thanh.

Utf8BOM = 2

Mã mã hóa với UTF8 mã hóa với nhân vật ByteOfMark đầu tiên.

Examples

Những mẫu này cho thấy làm thế nào để mã hóa và lưu mã thanh QR với định dạng dữ liệu mở rộng.

//This sample shows how to use ECI encoding and save a BarCode image.

[C#]
using (Aspose.BarCode.Generation.BarcodeGenerator generator = new Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR))
{
    generator.CodeText = "12345TEXT";
    generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ECIEncoding;
    generator.Parameters.Barcode.QR.QrECIEncoding = ECIEncodings.UTF8;
    generator.Save("test.png");
}
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR)
    generator.CodeText = "12345TEXT"
    generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.ECIEncoding
    generator.Parameters.Barcode.QR.QrECIEncoding = ECIEncodings.UTF8
    generator.Save("test.png")
End Using

//This sample shows how to use FNC1 first position in Extended Mode.

//Extended Channel mode which supports FNC1 first position, FNC1 second position and multi ECI modes.
//It is better to use QrExtCodetextBuilder for extended codetext generation.
//Use Display2DText property to set visible text to removing managing characters.
//Encoding Principles:
//All symbols "\" must be doubled "\\" in the codetext.
//FNC1 in first position is set in codetext as as "&lt;FNC1&gt;"
//FNC1 in second position is set in codetext as as "&lt;FNC1(value)&gt;". The value must be single symbols (a-z, A-Z) or digits from 0 to 99.
//Group Separator for FNC1 modes is set as 0x1D character '\\u001D'
//If you need to insert "&lt;FNC1&gt;" string into barcode write it as "&lt;\FNC1&gt;"
//ECI identifiers are set as single slash and six digits identifier "\000026" - UTF8 ECI identifier
//To disable current ECI mode and convert to default JIS8 mode zero mode ECI indetifier is set. "\000000"
//All unicode characters after ECI identifier are automatically encoded into correct character codeset.

[C#]
//create codetext
QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
textBuilder.AddFNC1FirstPosition();
textBuilder.AddPlainCodetext("000%89%%0");
textBuilder.AddFNC1GroupSeparator();
textBuilder.AddPlainCodetext("12345&lt;FNC1&gt;");
//generate barcode
using (Aspose.BarCode.Generation.BarcodeGenerator generator = new Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR))
{
    generator.CodeText = textBuilder.GetExtendedCodetext();
    generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.Extended;
    generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text";
    generator.Save(@"d:\test.png");
}
'create codetext
Dim textBuilder As New QrExtCodetextBuilder()
textBuilder.AddFNC1FirstPosition()
textBuilder.AddPlainCodetext("000%89%%0")
textBuilder.AddFNC1GroupSeparator()
textBuilder.AddPlainCodetext("12345&lt;FNC1&gt;")
'generate barcode
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR)
    generator.CodeText = textBuilder.GetExtendedCodetext()
    generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.Extended
    generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text"
    generator.Save("test.png")
End Using

//This sample shows how to use FNC1 second position in Extended Mode.

[C#]
//create codetext
QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
textBuilder.AddFNC1SecondPosition("12");
textBuilder.AddPlainCodetext("TRUE3456"); 
//generate barcode
using (Aspose.BarCode.Generation.BarcodeGenerator generator = new Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR))
{
    generator.CodeText = textBuilder.GetExtendedCodetext();
    generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.Extended;
    generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text";
    generator.Save(@"d:\test.png");
}
'create codetext
Dim textBuilder As New QrExtCodetextBuilder()
textBuilder.AddFNC1SecondPosition("12")
textBuilder.AddPlainCodetext("TRUE3456")
'generate barcode
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR)
    generator.CodeText = textBuilder.GetExtendedCodetext()
    generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.Extended
    generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text"
    generator.Save("test.png")
End Using

//This sample shows how to use multi ECI mode in Extended Mode.

[C#]
//create codetext
QrExtCodetextBuilder textBuilder = new QrExtCodetextBuilder();
textBuilder.AddECICodetext(ECIEncodings.Win1251, "Will");
textBuilder.AddECICodetext(ECIEncodings.UTF8, "Right");
textBuilder.AddECICodetext(ECIEncodings.UTF16BE, "Power");
textBuilder.AddPlainCodetext(@"t\e\\st");   
//generate barcode
using (Aspose.BarCode.Generation.BarcodeGenerator generator = new Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR))
{
    generator.CodeText = textBuilder.GetExtendedCodetext();
    generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.Extendedt;
    generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text";
    generator.Save(@"d:\test.png");
}
'create codetext
Dim textBuilder As New QrExtCodetextBuilder()
textBuilder.AddECICodetext(ECIEncodings.Win1251, "Will")
textBuilder.AddECICodetext(ECIEncodings.UTF8, "Right")
textBuilder.AddECICodetext(ECIEncodings.UTF16BE, "Power")
textBuilder.AddPlainCodetext(@"t\e\\st") 
'generate barcode
Using generator As New Aspose.BarCode.Generation.BarcodeGenerator(EncodeTypes.QR)
    generator.CodeText = textBuilder.GetExtendedCodetext()
    generator.Parameters.Barcode.QR.QrEncodeMode = QREncodeMode.Extended
    generator.Parameters.Barcode.CodeTextParameters.TwoDDisplayText = "My Text"
    generator.Save("test.png")
End Using
 Tiếng Việt