Fixed unpackaging of Japanese glyphs ranges

This commit is contained in:
ocornut 2015-02-26 19:06:54 +00:00
parent 168a811d11
commit 037ec09ffe

View File

@ -7429,20 +7429,19 @@ const ImWchar* ImFontAtlas::GetGlyphRangesJapanese()
109,2,18,23,0,0,9,61,3,0,28,41,77,27,19,17,81,5,2,14,5,83,57,252,14,154,263,14,20,8,13,6,57,39,38, 109,2,18,23,0,0,9,61,3,0,28,41,77,27,19,17,81,5,2,14,5,83,57,252,14,154,263,14,20,8,13,6,57,39,38,
}; };
static int ranges_unpacked = false; static int ranges_unpacked = false;
static ImWchar ranges[10 + 1 + IM_ARRAYSIZE(offsets_from_0x4E00)*2] = static ImWchar ranges[10 + IM_ARRAYSIZE(offsets_from_0x4E00)*2 + 1] =
{ {
0x0020, 0x00FF, // Basic Latin + Latin Supplement 0x0020, 0x00FF, // Basic Latin + Latin Supplement
0x3000, 0x3000, // Ideographic Space 0x3000, 0x3000, // Ideographic Space
0x3040, 0x30FF, // Hiragana, Katakana 0x3040, 0x30FF, // Hiragana, Katakana
0x31F0, 0x31FF, // Katakana Phonetic Extensions 0x31F0, 0x31FF, // Katakana Phonetic Extensions
0xFF00, 0xFFEF, // Half-width characters 0xFF00, 0xFFEF, // Half-width characters
0,
}; };
if (!ranges_unpacked) if (!ranges_unpacked)
{ {
// Unpack // Unpack
int codepoint = 0x4e00; int codepoint = 0x4e00;
ImWchar* dst = &ranges[6]; ImWchar* dst = &ranges[10];
for (int n = 0; n < IM_ARRAYSIZE(offsets_from_0x4E00); n++, dst += 2) for (int n = 0; n < IM_ARRAYSIZE(offsets_from_0x4E00); n++, dst += 2)
dst[0] = dst[1] = (ImWchar)(codepoint += (offsets_from_0x4E00[n] + 1)); dst[0] = dst[1] = (ImWchar)(codepoint += (offsets_from_0x4E00[n] + 1));
dst[0] = 0; dst[0] = 0;