HanXinEncodeMode
Inheritance: java.lang.Object, java.lang.Enum
public enum HanXinEncodeMode extends Enum<HanXinEncodeMode>
Han Xin Code encoding mode. It is recommended to use Auto with ASCII / Chinese characters or Unicode for Unicode characters.
// Auto mode String codetext = "1234567890ABCDEFGabcdefg,Han Xin Code"; BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext); generator.save("test.bmp"); // Binary mode byte[] encodedArr = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.HAN_XIN) generator.setCodeText(encodedArr); generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.BINARY); generator.save("test.bmp"); // ECI mode String codetext = "\u0391\u0392\u0393\u0394\u0395"; BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext); generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.ECI); generator.getParameters().getBarcode().getHanXin().setHanXinECIEncoding(ECIEncodings.ISO_8859_7); generator.save("test.bmp"); // URI mode String codetext = "https://www.test.com/%BC%DE%%%ab/search=test"; BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.HAN_XIN, codetext); generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.URI); generator.save("test.bmp"); // Extended mode String str = "\\gb180302b:\u6f04\\gb180304b:\u3401\\region1:\u5168\\region2:\u8785\\numeric:123\\text:qwe\\\\unicode:\u0131nt\u0259\u02c8n\u0283\u0259n\u0259l" + "\\000009:\u0391\u0392\u0393\u0394\u0395\\auto:abc\\binary:abc\\\\uri:backslashes_should_be_doubled\\\\000555:test"; String expectedStr = "\u6f04\u3401\u5168\u8785123qwe\u0131nt\u0259\u02c8n\u0283\u0259n\u0259l\u0391\u0392\u0393\u0394\u0395abcabcbackslashes_should_be_doubled\\000555:test"; BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.HanXin, str); generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.EXTENDED); generator.save("test.bmp"); // Using HanXinExtCodetextBuilder for Extended mode (same codetext as in previous example) //create codetext HanXinExtCodetextBuilder codeTextBuilder = new HanXinExtCodetextBuilder(); codeTextBuilder.addGB18030TwoByte("\u6f04"); codeTextBuilder.addGB18030FourByte("\u3401"); codeTextBuilder.addCommonChineseRegionOne("\u5168"); codeTextBuilder.addCommonChineseRegionTwo("\u8785"); codeTextBuilder.addNumeric("123"); codeTextBuilder.addText("qwe"); codeTextBuilder.addUnicode("\u0131nt\u0259\u02c8n\u0283\u0259n\u0259l"); codeTextBuilder.addECI("\u0391\u0392\u0393\u0394\u0395", 9); codeTextBuilder.addAuto("abc"); codeTextBuilder.addBinary("abc"); codeTextBuilder.addURI("backslashes_should_be_doubled\\000555:test"); String expectedStr = "\u6f04\u3401\u5168\u8785123qwe\u0131nt\u0259\u02c8n\u0283\u0259n\u0259l\u0391\u0392\u0393\u0394\u0395abcabcbackslashes_should_be_doubled\\000555:test"; //generate codetext String str = codeTextBuilder.getExtendedCodetext(); //generate BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.HanXin, str); generator.getParameters().getBarcode().getHanXin().setHanXinEncodeMode(HanXinEncodeMode.EXTENDED); generator.save("test.bmp");
Fields
Field | Description |
---|---|
AUTO | In Auto mode, the CodeText is encoded with maximum data compactness. |
BINARY | In Binary mode, the CodeText is encoded with maximum data compactness. |
ECI | In ECI mode, the entire message is re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier. |
EXTENDED | Extended mode allow combinations of internal modes: Auto, Binary, Text, Numeric, URI, Unicode, ECI, Common Chinese Region One, Common Chinese Region Two, GB18030 Two Byte, GB18030 Four Byte. |
UNICODE | Unicode mode designs a way to represent any text data reference to UTF8 encoding/charset in Han Xin Code. |
URI | URI mode indicates the data represented in Han Xin Code is Uniform Resource Identifier (URI) reference to RFC 3986. |
Methods
AUTO
public static final HanXinEncodeMode AUTO
In Auto mode, the CodeText is encoded with maximum data compactness. Unicode characters are encoded using GB18030 encoding according to HanXin barcode specification.
BINARY
public static final HanXinEncodeMode BINARY
In Binary mode, the CodeText is encoded with maximum data compactness. If a Unicode character is found, an exception is thrown.
ECI
public static final HanXinEncodeMode ECI
In ECI mode, the entire message is re-encoded in the ECIEncoding specified encoding with the insertion of an ECI identifier. If a character is found that is not supported by the selected ECI encoding, an exception is thrown. Please note that some old (pre 2006) scanners may not support this mode.
EXTENDED
public static final HanXinEncodeMode EXTENDED
Extended mode allow combinations of internal modes: Auto, Binary, Text, Numeric, URI, Unicode, ECI, Common Chinese Region One, Common Chinese Region Two, GB18030 Two Byte, GB18030 Four Byte. Codetext can be built manually with prefixes and doubled backslashes, e.g.: @"\auto:abc\000009:\u0391\u0392\u0393\u0394\u0395\auto:ab\\c" or using the HanXinExtCodetextBuilder. If the codetext contains an ECI fragment, then only the following modes can be in that codetext after ECI fragment: Auto, Binary, Text, Numeric, URI, ECI.
UNICODE
public static final HanXinEncodeMode UNICODE
Unicode mode designs a way to represent any text data reference to UTF8 encoding/charset in Han Xin Code.
URI
public static final HanXinEncodeMode URI
URI mode indicates the data represented in Han Xin Code is Uniform Resource Identifier (URI) reference to RFC 3986.
valueOf(Class arg0, String arg1)
public static T <T>valueOf(Class<T> arg0, String arg1)
Parameters:
Parameter | Type | Description |
---|---|---|
arg0 | java.lang.Class | |
arg1 | java.lang.String |
Returns: T
compareTo(E arg0)
public final int compareTo(E arg0)
Parameters:
Parameter | Type | Description |
---|---|---|
arg0 | E |
Returns: int
equals(Object arg0)
public final boolean equals(Object arg0)
Parameters:
Parameter | Type | Description |
---|---|---|
arg0 | java.lang.Object |
Returns: boolean
getClass()
public final native Class<?> getClass()
Returns: java.lang.Class
getDeclaringClass()
public final Class<E> getDeclaringClass()
Returns:
java.lang.Class
getValue()
public int getValue()
Returns: int
hashCode()
public final int hashCode()
Returns: int
name()
public final String name()
Returns: java.lang.String
notify()
public final native void notify()
notifyAll()
public final native void notifyAll()
ordinal()
public final int ordinal()
Returns: int
toString()
public String toString()
Returns: java.lang.String
valueOf(String name)
public static HanXinEncodeMode valueOf(String name)
Parameters:
Parameter | Type | Description |
---|---|---|
name | java.lang.String |
Returns: HanXinEncodeMode
values()
public static HanXinEncodeMode[] values()
Returns: com.aspose.barcode.generation.HanXinEncodeMode[]
wait()
public final void wait()
wait(long arg0)
public final native void wait(long arg0)
Parameters:
Parameter | Type | Description |
---|---|---|
arg0 | long |
wait(long arg0, int arg1)
public final void wait(long arg0, int arg1)
Parameters:
Parameter | Type | Description |
---|---|---|
arg0 | long | |
arg1 | int |