Issue 1084 add known ECIs and improve encoding names a bit

git-svn-id: https://zxing.googlecode.com/svn/trunk@2058 59b500cc-1b3d-0410-9834-0bbf25fbcc57
This commit is contained in:
srowen 2011-11-30 09:39:42 +00:00
parent 1a53f4f875
commit 4c8ec7a70b
2 changed files with 32 additions and 15 deletions

View file

@ -58,6 +58,7 @@ Morgan Courbet
Nikolaos Ftylitakis Nikolaos Ftylitakis
Pablo Orduña (University of Deusto) Pablo Orduña (University of Deusto)
Paul Hackenberger Paul Hackenberger
perennialmind
Ralf Kistner Ralf Kistner
Randy Shen (Acer) Randy Shen (Acer)
Rasmus Schrøder Sørensen Rasmus Schrøder Sørensen

View file

@ -27,23 +27,34 @@ import java.util.Map;
*/ */
public enum CharacterSetECI { public enum CharacterSetECI {
// Enum name is a Java encoding valid for java.lang and java.io
Cp437(new int[]{0,2}), Cp437(new int[]{0,2}),
ISO8859_1(new int[]{1,3}, "ISO-8859-1"), ISO8859_1(new int[]{1,3}, "ISO-8859-1"),
ISO8859_2(4), ISO8859_2(4, "ISO-8859-2"),
ISO8859_3(5), ISO8859_3(5, "ISO-8859-3"),
ISO8859_4(6), ISO8859_4(6, "ISO-8859-4"),
ISO8859_5(7), ISO8859_5(7, "ISO-8859-5"),
ISO8859_6(8), ISO8859_6(8, "ISO-8859-6"),
ISO8859_7(9), ISO8859_7(9, "ISO-8859-7"),
ISO8859_8(10), ISO8859_8(10, "ISO-8859-8"),
ISO8859_9(11), ISO8859_9(11, "ISO-8859-9"),
ISO8859_10(12), ISO8859_10(12, "ISO-8859-10"),
ISO8859_11(13), ISO8859_11(13, "ISO-8859-11"),
ISO8859_13(15), ISO8859_13(15, "ISO-8859-13"),
ISO8859_14(16), ISO8859_14(16, "ISO-8859-14"),
ISO8859_15(7), ISO8859_15(17, "ISO-8859-15"),
ISO8859_16(18), ISO8859_16(18, "ISO-8859-16"),
SJIS(new int[]{20}, "Shift_JIS"); SJIS(20, "Shift_JIS"),
Cp1250(21, "windows-1250"),
Cp1251(22, "windows-1251"),
Cp1252(23, "windows-1252"),
Cp1256(24, "windows-1256"),
UnicodeBigUnmarked(25, "UTF-16BE"),
UTF8(26, "UTF-8"),
ASCII(27, "US-ASCII"),
Big5(28),
EUC_CN(new int[] {29}, "x-EUC_CN"),
EUC_KR(new int[]{30}, "EUC-KR");
private static final Map<Integer,CharacterSetECI> VALUE_TO_ECI = new HashMap<Integer,CharacterSetECI>(); private static final Map<Integer,CharacterSetECI> VALUE_TO_ECI = new HashMap<Integer,CharacterSetECI>();
private static final Map<String,CharacterSetECI> NAME_TO_ECI = new HashMap<String,CharacterSetECI>(); private static final Map<String,CharacterSetECI> NAME_TO_ECI = new HashMap<String,CharacterSetECI>();
@ -65,6 +76,11 @@ public enum CharacterSetECI {
CharacterSetECI(int value) { CharacterSetECI(int value) {
this(new int[] {value}); this(new int[] {value});
} }
CharacterSetECI(int value, String... otherEncodingNames) {
this.values = new int[] {value};
this.otherEncodingNames = otherEncodingNames;
}
CharacterSetECI(int[] values, String... otherEncodingNames) { CharacterSetECI(int[] values, String... otherEncodingNames) {
this.values = values; this.values = values;