From 2e2847f3f0acfd21b46aa4e41d9fc329134ffca0 Mon Sep 17 00:00:00 2001 From: Mathieu Schroeter Date: Fri, 29 Sep 2017 16:25:12 +0200 Subject: [PATCH] Add extended characters for Italian --- resources/image/text.png | Bin 7209 -> 6966 bytes src/blupi.cxx | 2 +- src/text.cxx | 22 ++++++++++++++++++---- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/resources/image/text.png b/resources/image/text.png index ae8806222681c4246b3d0a0ffe581404c9497cf9..05b6a00a0323b8e678075216f31a191ce1c30609 100644 GIT binary patch literal 6966 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 G$o~QLnF|U4 literal 7209 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 HZWr=D>GD}f diff --git a/src/blupi.cxx b/src/blupi.cxx index 950fc8a..9e21c54 100644 --- a/src/blupi.cxx +++ b/src/blupi.cxx @@ -847,7 +847,7 @@ DoInit (int argc, char * argv[], bool & exit) } totalDim.x = DIMTEXTX * 16; - totalDim.y = DIMTEXTY * 8 * 3; + totalDim.y = DIMTEXTY * 9 * 3; iconDim.x = DIMTEXTX; iconDim.y = DIMTEXTY; if (!g_pPixmap->Cache (CHTEXT, "image/text.png", totalDim, iconDim)) diff --git a/src/text.cxx b/src/text.cxx index b98a7cc..b33e920 100644 --- a/src/text.cxx +++ b/src/text.cxx @@ -34,6 +34,7 @@ static Sint32 GetOffset (const char *& c) { + /* clang-format off */ static const unsigned char table_accents[] = { /* ü à â é è ë ê ï */ /* 0xFC, 0xE0, 0xE2, 0xE9, 0xE8, 0xEB, 0xEA, 0xEF, // CP1252 */ @@ -43,6 +44,12 @@ GetOffset (const char *& c) 0xAE, 0xB4, 0xB9, 0xBB, 0xA4, 0xB6, 0xA7, // UTF-8 }; + static const unsigned char table_extended[] = { + /* ò ì */ + 0xB2, 0xAC, /* UTF-8 */ + }; + /* clang-format on */ + if (static_cast (*c) == 0xC3) c++; @@ -51,6 +58,11 @@ GetOffset (const char *& c) if ((unsigned char) *c == table_accents[i]) return 15 + i; } + + for (unsigned int i = 0; i < countof (table_extended); ++i) + if ((unsigned char) *c == table_extended[i]) + return 127 + i; + if (*c < 0) return 1; // square @@ -77,7 +89,8 @@ GetCharWidth (const char *& c, Sint32 font) 12, 8, 9, 9, 9, 8, 8, 8, 9, 4, 8, 9, 8, 10, 9, 9, 8, 9, 8, 9, 10, 8, 9, 11, 9, 8, 10, 7, 10, 7, 13, 13, 9, 9, 8, 8, 8, 8, 6, 8, 8, 4, 6, 8, 4, 12, 8, 8, - 8, 8, 7, 6, 7, 8, 8, 10, 8, 8, 7, 6, 6, 6, 10, 0, + 8, 8, 7, 6, 7, 8, 8, 10, 8, 8, 7, 6, 6, 6, 10, 8, + 5, }; static const unsigned char table_width_little[] = @@ -89,7 +102,8 @@ GetCharWidth (const char *& c, Sint32 font) 9, 8, 6, 7, 7, 5, 5, 8, 7, 2, 4, 7, 5, 10, 7, 8, 6, 8, 7, 6, 6, 6, 8, 12, 7, 6, 6, 3, 5, 3, 6, 8, 4, 6, 6, 6, 6, 6, 4, 6, 6, 2, 3, 5, 2, 10, 6, 6, - 6, 6, 3, 5, 3, 6, 6, 8, 6, 6, 5, 4, 6, 4, 7, 0, + 6, 6, 3, 5, 3, 6, 6, 8, 6, 6, 5, 4, 6, 4, 7, 6, + 3, }; // clang-format on @@ -118,7 +132,7 @@ DrawText (CPixmap * pPixmap, Point pos, const char * pText, Sint32 font) if (font != FONTLITTLE) { - rank += 128 * font; + rank += (128 + 16) * font; pPixmap->DrawIcon (-1, CHTEXT, rank, pos); } else @@ -142,7 +156,7 @@ DrawTextPente ( while (*pText != 0) { rank = GetOffset (pText); - rank += 128 * font; + rank += (128 + 16) * font; pPixmap->DrawIcon (-1, CHTEXT, rank, pos); lg = GetCharWidth (pText, font);