|
@@ -38,44 +38,10 @@ namespace ZXing.QrCode.Internal |
|
|
|
|
|
|
|
|
// No, we can't use an enum here. J2ME doesn't support it.
|
|
|
// No, we can't use an enum here. J2ME doesn't support it.
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
///
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public static readonly Mode TERMINATOR = new Mode(new int[] { 0, 0, 0 }, 0x00, "TERMINATOR"); // Not really a mode...
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
///
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public static readonly Mode NUMERIC = new Mode(new int[] { 10, 12, 14 }, 0x01, "NUMERIC");
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
///
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public static readonly Mode ALPHANUMERIC = new Mode(new int[] { 9, 11, 13 }, 0x02, "ALPHANUMERIC");
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
///
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public static readonly Mode STRUCTURED_APPEND = new Mode(new int[] { 0, 0, 0 }, 0x03, "STRUCTURED_APPEND"); // Not supported
|
|
|
|
|
|
/// <summary>
|
|
|
/// <summary>
|
|
|
///
|
|
|
///
|
|
|
/// </summary>
|
|
|
/// </summary>
|
|
|
public static readonly Mode BYTE = new Mode(new int[] { 8, 16, 16 }, 0x04, "BYTE");
|
|
|
public static readonly Mode BYTE = new Mode(new int[] { 8, 16, 16 }, 0x04, "BYTE");
|
|
|
/// <summary>
|
|
|
|
|
|
///
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public static readonly Mode ECI = new Mode(null, 0x07, "ECI"); // character counts don't apply
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
///
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public static readonly Mode KANJI = new Mode(new int[] { 8, 10, 12 }, 0x08, "KANJI");
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
///
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public static readonly Mode FNC1_FIRST_POSITION = new Mode(null, 0x05, "FNC1_FIRST_POSITION");
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
///
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public static readonly Mode FNC1_SECOND_POSITION = new Mode(null, 0x09, "FNC1_SECOND_POSITION");
|
|
|
|
|
|
/// <summary>See GBT 18284-2000; "Hanzi" is a transliteration of this mode name.</summary>
|
|
|
|
|
|
public static readonly Mode HANZI = new Mode(new int[] { 8, 10, 12 }, 0x0D, "HANZI");
|
|
|
|
|
|
|
|
|
|
|
|
private readonly int[] characterCountBitsForVersions;
|
|
|
private readonly int[] characterCountBitsForVersions;
|
|
|
private readonly int bits;
|
|
|
private readonly int bits;
|
|
@@ -100,27 +66,8 @@ namespace ZXing.QrCode.Internal |
|
|
{
|
|
|
{
|
|
|
switch (bits)
|
|
|
switch (bits)
|
|
|
{
|
|
|
{
|
|
|
case 0x0:
|
|
|
|
|
|
return TERMINATOR;
|
|
|
|
|
|
case 0x1:
|
|
|
|
|
|
return NUMERIC;
|
|
|
|
|
|
case 0x2:
|
|
|
|
|
|
return ALPHANUMERIC;
|
|
|
|
|
|
case 0x3:
|
|
|
|
|
|
return STRUCTURED_APPEND;
|
|
|
|
|
|
case 0x4:
|
|
|
case 0x4:
|
|
|
return BYTE;
|
|
|
return BYTE;
|
|
|
case 0x5:
|
|
|
|
|
|
return FNC1_FIRST_POSITION;
|
|
|
|
|
|
case 0x7:
|
|
|
|
|
|
return ECI;
|
|
|
|
|
|
case 0x8:
|
|
|
|
|
|
return KANJI;
|
|
|
|
|
|
case 0x9:
|
|
|
|
|
|
return FNC1_SECOND_POSITION;
|
|
|
|
|
|
case 0xD:
|
|
|
|
|
|
// 0xD is defined in GBT 18284-2000, may not be supported in foreign country
|
|
|
|
|
|
return HANZI;
|
|
|
|
|
|
default:
|
|
|
default:
|
|
|
throw new ArgumentException();
|
|
|
throw new ArgumentException();
|
|
|
}
|
|
|
}
|
|
@@ -164,16 +111,5 @@ namespace ZXing.QrCode.Internal |
|
|
return bits;
|
|
|
return bits;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Returns a <see cref="System.String"/> that represents this instance.
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <returns>
|
|
|
|
|
|
/// A <see cref="System.String"/> that represents this instance.
|
|
|
|
|
|
/// </returns>
|
|
|
|
|
|
public override String ToString()
|
|
|
|
|
|
{
|
|
|
|
|
|
return name;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
}
|
|
|
} |
|
|
} |