final class DecodedBitStreamParser
extends java.lang.Object
QR Codes can encode text as bits in one of several modes, and can use multiple modes in one QR Code. This class decodes the bits back into text.
See ISO 18004:2006, 6.4.3 - 6.4.7
Modifier and Type | Field and Description |
---|---|
private static char[] |
ALPHANUMERIC_CHARS
See ISO 18004:2006, 6.4.4 Table 5
|
private static int |
GB2312_SUBSET |
Modifier | Constructor and Description |
---|---|
private |
DecodedBitStreamParser() |
Modifier and Type | Method and Description |
---|---|
(package private) static DecoderResult |
decode(byte[] bytes,
Version version,
ErrorCorrectionLevel ecLevel,
java.util.Map<DecodeHintType,?> hints) |
private static void |
decodeAlphanumericSegment(BitSource bits,
java.lang.StringBuilder result,
int count,
boolean fc1InEffect) |
private static void |
decodeByteSegment(BitSource bits,
java.lang.StringBuilder result,
int count,
CharacterSetECI currentCharacterSetECI,
java.util.Collection<byte[]> byteSegments,
java.util.Map<DecodeHintType,?> hints) |
private static void |
decodeHanziSegment(BitSource bits,
java.lang.StringBuilder result,
int count)
See specification GBT 18284-2000
|
private static void |
decodeKanjiSegment(BitSource bits,
java.lang.StringBuilder result,
int count) |
private static void |
decodeNumericSegment(BitSource bits,
java.lang.StringBuilder result,
int count) |
private static int |
parseECIValue(BitSource bits) |
private static char |
toAlphaNumericChar(int value) |
private static final char[] ALPHANUMERIC_CHARS
private static final int GB2312_SUBSET
static DecoderResult decode(byte[] bytes, Version version, ErrorCorrectionLevel ecLevel, java.util.Map<DecodeHintType,?> hints) throws FormatException
FormatException
private static void decodeHanziSegment(BitSource bits, java.lang.StringBuilder result, int count) throws FormatException
FormatException
private static void decodeKanjiSegment(BitSource bits, java.lang.StringBuilder result, int count) throws FormatException
FormatException
private static void decodeByteSegment(BitSource bits, java.lang.StringBuilder result, int count, CharacterSetECI currentCharacterSetECI, java.util.Collection<byte[]> byteSegments, java.util.Map<DecodeHintType,?> hints) throws FormatException
FormatException
private static char toAlphaNumericChar(int value) throws FormatException
FormatException
private static void decodeAlphanumericSegment(BitSource bits, java.lang.StringBuilder result, int count, boolean fc1InEffect) throws FormatException
FormatException
private static void decodeNumericSegment(BitSource bits, java.lang.StringBuilder result, int count) throws FormatException
FormatException
private static int parseECIValue(BitSource bits) throws FormatException
FormatException