From 2644928a5623b4912355d3efba5041226d8f702e Mon Sep 17 00:00:00 2001 From: egorguslyan <egorguslyan@gmail.com> Date: Thu, 25 Nov 2021 09:26:04 +0000 Subject: [PATCH] Russian font --- Dashboard/font.h | 348 ++++++++++++++++++++++++++++++++++------------- 1 file changed, 250 insertions(+), 98 deletions(-) diff --git a/Dashboard/font.h b/Dashboard/font.h index 97b50e0..d9ac1dc 100644 --- a/Dashboard/font.h +++ b/Dashboard/font.h @@ -5,6 +5,7 @@ // Example char // const uint8_t char[] PROGMEM = {cords(x, y, b), 0b11111110, 0b11110111, 0b01011101, 0b11101111, 0b11100000}; +const uint8_t font_null[] PROGMEM = {0}; const uint8_t font_notdef[] PROGMEM = {cords(5, 0, 5), 0b11111110, 0b11110111, 0b01011101, 0b11101111, 0b11100000}; const uint8_t font_space[] PROGMEM = {cords(1, 6, 1), 0b00000000}; const uint8_t font_exclamation[] PROGMEM = {cords(1, 0, 1), 0b11110100}; @@ -103,103 +104,254 @@ const uint8_t font_w[] PROGMEM = {cords(5, 2, 3), 0b10001100, 0b01101 const uint8_t font_x[] PROGMEM = {cords(3, 2, 2), 0b10110101, 0b01011010}; const uint8_t font_y[] PROGMEM = {cords(3, 2, 2), 0b10110101, 0b10011100}; const uint8_t font_z[] PROGMEM = {cords(3, 2, 2), 0b11100101, 0b01001110}; +// Russian +#ifdef LANG_RU_RU +const uint8_t font_ru_ru_B[] PROGMEM = {cords(4, 0, 4), 0b11111000, 0b10001111, 0b10011001, 0b11110000}; +const uint8_t font_ru_ru_G[] PROGMEM = {cords(4, 0, 4), 0b11111000, 0b10001000, 0b10001000, 0b10000000}; +const uint8_t font_ru_ru_D[] PROGMEM = {cords(5, 0, 5), 0b00110010, 0b10010100, 0b10101001, 0b01111110, 0b00100000}; +const uint8_t font_ru_ru_Ye[] PROGMEM = {cords(3, 0, 3), 0b10100011, 0b11001111, 0b00111000}; +const uint8_t font_ru_ru_J[] PROGMEM = {cords(5, 0, 5), 0b10101101, 0b01011101, 0b01011010, 0b11010110, 0b10100000}; +const uint8_t font_ru_ru_Z[] PROGMEM = {cords(4, 0, 4), 0b11100001, 0b00011110, 0b00010001, 0b11100000}; +const uint8_t font_ru_ru_I[] PROGMEM = {cords(5, 0, 5), 0b10001100, 0b11101011, 0b01011010, 0b11100110, 0b00100000}; +const uint8_t font_ru_ru_Yi[] PROGMEM = {cords(5, 0, 5), 0b01110000, 0b00100011, 0b00111010, 0b11100110, 0b00100000}; +const uint8_t font_ru_ru_L[] PROGMEM = {cords(4, 0, 5), 0b00110101, 0b01010101, 0b01010101, 0b10010000}; +const uint8_t font_ru_ru_P[] PROGMEM = {cords(4, 0, 5), 0b11111001, 0b10011001, 0b10011001, 0b10010000}; +const uint8_t font_ru_ru_U[] PROGMEM = {cords(4, 0, 5), 0b10011001, 0b10010111, 0b00010010, 0b11000000}; +const uint8_t font_ru_ru_F[] PROGMEM = {cords(5, 0, 5), 0b01110101, 0b01101010, 0b11100010, 0b00010000, 0b10000000}; +const uint8_t font_ru_ru_C[] PROGMEM = {cords(5, 0, 5), 0b10010100, 0b10100101, 0b00101001, 0b01111100, 0b00100000}; +const uint8_t font_ru_ru_Ch[] PROGMEM = {cords(4, 0, 5), 0b10011001, 0b10011111, 0b00010001, 0b00010000}; +const uint8_t font_ru_ru_Sh[] PROGMEM = {cords(5, 1, 5), 0b10101101, 0b01101011, 0b01011010, 0b11111100}; +const uint8_t font_ru_ru_Sc[] PROGMEM = {cords(5, 0, 5), 0b11111000, 0b10001111, 0b10011001, 0b11110000, 0b10000000}; +const uint8_t font_ru_ru_Tz[] PROGMEM = {cords(5, 0, 5), 0b11000010, 0b00010000, 0b11100100, 0b10100101, 0b11000000}; +const uint8_t font_ru_ru_Y[] PROGMEM = {cords(5, 0, 5), 0b10001100, 0b01100011, 0b10011010, 0b11010111, 0b00100000}; +const uint8_t font_ru_ru_Mz[] PROGMEM = {cords(4, 0, 5), 0b10001000, 0b10001110, 0b10011001, 0b11100000}; +const uint8_t font_ru_ru_Ae[] PROGMEM = {cords(4, 0, 5), 0b11100001, 0b00010111, 0b00010001, 0b11100000}; +const uint8_t font_ru_ru_Yu[] PROGMEM = {cords(5, 0, 5), 0b10010101, 0b01101011, 0b11011010, 0b11010110, 0b01000000}; +const uint8_t font_ru_ru_Ya[] PROGMEM = {cords(4, 0, 5), 0b01111001, 0b10010111, 0b00110101, 0b10010000}; +const uint8_t font_ru_ru_b[] PROGMEM = {cords(3, 0, 5), 0b01110001, 0b00111011, 0b01010000}; +const uint8_t font_ru_ru_v[] PROGMEM = {cords(3, 0, 4), 0b01010111, 0b01011010, 0b10000000}; +const uint8_t font_ru_ru_g[] PROGMEM = {cords(3, 2, 5), 0b11110010, 0b01001000}; +const uint8_t font_ru_ru_d[] PROGMEM = {cords(5, 2, 5), 0b00110010, 0b10010101, 0b11111000, 0b10000000}; +const uint8_t font_ru_ru_ye[] PROGMEM = {cords(4, 0, 5), 0b10010000, 0b01101001, 0b11101000, 0b01100000}; +const uint8_t font_ru_ru_j[] PROGMEM = {cords(5, 2, 5), 0b10101011, 0b10001000, 0b11101010, 0b10000000}; +const uint8_t font_ru_ru_z[] PROGMEM = {cords(3, 2, 5), 0b11000111, 0b00011100}; +const uint8_t font_ru_ru_i[] PROGMEM = {cords(5, 2, 5), 0b10001100, 0b11101011, 0b10011000, 0b10000000}; +const uint8_t font_ru_ru_yi[] PROGMEM = {cords(5, 0, 5), 0b01110000, 0b00100011, 0b00111010, 0b11100110, 0b00100000}; +const uint8_t font_ru_ru_k[] PROGMEM = {cords(4, 2, 5), 0b10011010, 0b11001010, 0b10010000}; +const uint8_t font_ru_ru_l[] PROGMEM = {cords(4, 2, 5), 0b00110101, 0b01010101, 0b10010000}; +const uint8_t font_ru_ru_n[] PROGMEM = {cords(4, 2, 5), 0b10011001, 0b11111001, 0b10010000}; +const uint8_t font_ru_ru_p[] PROGMEM = {cords(4, 0, 5), 0b11111001, 0b10011001, 0b10010000}; +const uint8_t font_ru_ru_t[] PROGMEM = {cords(3, 2, 5), 0b11101001, 0b00100100}; +const uint8_t font_ru_ru_f[] PROGMEM = {cords(5, 2, 5), 0b00100011, 0b10101010, 0b11100010}; +const uint8_t font_ru_ru_c[] PROGMEM = {cords(4, 2, 5), 0b10101010, 0b10101111, 0b00010000}; +const uint8_t font_ru_ru_ch[] PROGMEM = {cords(4, 2, 5), 0b10011001, 0b01110001, 0b00010000}; +const uint8_t font_ru_ru_sh[] PROGMEM = {cords(5, 2, 5), 0b10101101, 0b01101011, 0b01011111, 0b10000000}; +const uint8_t font_ru_ru_sc[] PROGMEM = {cords(5, 1, 5), 0b10101101, 0b01101011, 0b01011111, 0b10000100}; +const uint8_t font_ru_ru_tz[] PROGMEM = {cords(4, 2, 5), 0b11000100, 0b01100101, 0b01100000}; +const uint8_t font_ru_ru_y[] PROGMEM = {cords(5, 2, 5), 0b10001100, 0b01110011, 0b01011100, 0b10000000}; +const uint8_t font_ru_ru_mz[] PROGMEM = {cords(3, 2, 5), 0b10010011, 0b01011100}; +const uint8_t font_ru_ru_ae[] PROGMEM = {cords(3, 2, 5), 0b11000101, 0b10011100}; +const uint8_t font_ru_ru_yu[] PROGMEM = {cords(5, 2, 5), 0b10010101, 0b01111011, 0b01011001}; +const uint8_t font_ru_ru_ya[] PROGMEM = {cords(4, 2, 5), 0b01111001, 0b01110101, 0b10010000}; +#endif -// Font dictionary Location Char Addres -const uint8_t* const font[] /*PROGMEM*/ = { font_notdef, // NONE NONE - font_space, // 32 - font_exclamation, //! 33 - font_quote, // " 34 - font_hashtag, // # 35 - font_promt, // $ 36 - font_percent, // % 37 - font_octopus, // & 38 - font_singlequote, //' 39 - font_bracketO, // ( 40 - font_bracketC, // ) 41 - font_multiply, // * 42 - font_plus, // + 43 - font_comma, // , 44 - font_minus, // - 45 - font_dot, // . 46 - font_slash, // / 47 - font_num0, // 0 48 - font_num1, // 1 49 - font_num2, // 2 50 - font_num3, // 3 51 - font_num4, // 4 52 - font_num5, // 5 53 - font_num6, // 6 54 - font_num7, // 7 55 - font_num8, // 8 56 - font_num9, // 9 57 - font_colon, // : 58 - font_semicolon, // ; 59 - font_less, // < 60 - font_equal, // = 61 - font_greater, // > 62 - font_question, // ? 63 - font_mail, // @ 64 - font_A, // A 65 - font_B, // B 66 - font_C, // C 67 - font_D, // D 68 - font_E, // E 69 - font_F, // F 70 - font_G, // G 71 - font_H, // H 72 - font_I, // I 73 - font_J, // J 74 - font_K, // K 75 - font_L, // L 76 - font_M, // M 77 - font_N, // N 78 - font_O, // O 79 - font_P, // P 80 - font_Q, // Q 81 - font_R, // R 82 - font_S, // S 83 - font_T, // T 84 - font_U, // U 85 - font_V, // V 86 - font_W, // W 87 - font_X, // X 88 - font_Y, // Y 89 - font_Z, // Z 90 - font_sbracketO, // [ 91 - font_bslash, // \ 92 - font_sbracketC, // ] 93 - font_caret, // ^ 94 - font_underscore, // _ 95 - font_grave, // ` 96 - font_a, // a 97 - font_b, // b 98 - font_c, // c 99 - font_d, // d 100 - font_e, // e 101 - font_f, // f 102 - font_g, // g 103 - font_h, // h 104 - font_i, // i 105 - font_j, // j 106 - font_k, // k 107 - font_l, // l 108 - font_m, // m 100 - font_n, // n 110 - font_o, // o 111 - font_p, // p 112 - font_q, // q 113 - font_r, // r 114 - font_s, // s 115 - font_t, // t 116 - font_u, // u 117 - font_v, // v 118 - font_w, // w 119 - font_x, // x 120 - font_y, // y 121 - font_z, // z 122 - font_fbracketO, // { 123 - font_pipe, // | 124 - font_fbracketC, // } 125 - font_tilda // ~ 126 +// Font dictionary Location Char Addres Lang +const uint8_t* const font[] /*PROGMEM*/ = { font_notdef, // NONE NONE 0 + font_space, // 32 0 + font_exclamation, //! 33 0 + font_quote, // " 34 0 + font_hashtag, // # 35 0 + font_promt, // $ 36 0 + font_percent, // % 37 0 + font_octopus, // & 38 0 + font_singlequote, //' 39 0 + font_bracketO, // ( 40 0 + font_bracketC, // ) 41 0 + font_multiply, // * 42 0 + font_plus, // + 43 0 + font_comma, // , 44 0 + font_minus, // - 45 0 + font_dot, // . 46 0 + font_slash, // / 47 0 + font_num0, // 0 48 0 + font_num1, // 1 49 0 + font_num2, // 2 50 0 + font_num3, // 3 51 0 + font_num4, // 4 52 0 + font_num5, // 5 53 0 + font_num6, // 6 54 0 + font_num7, // 7 55 0 + font_num8, // 8 56 0 + font_num9, // 9 57 0 + font_colon, // : 58 0 + font_semicolon, // ; 59 0 + font_less, // < 60 0 + font_equal, // = 61 0 + font_greater, // > 62 0 + font_question, // ? 63 0 + font_mail, // @ 64 0 + font_A, // A 65 0 + font_B, // B 66 0 + font_C, // C 67 0 + font_D, // D 68 0 + font_E, // E 69 0 + font_F, // F 70 0 + font_G, // G 71 0 + font_H, // H 72 0 + font_I, // I 73 0 + font_J, // J 74 0 + font_K, // K 75 0 + font_L, // L 76 0 + font_M, // M 77 0 + font_N, // N 78 0 + font_O, // O 79 0 + font_P, // P 80 0 + font_Q, // Q 81 0 + font_R, // R 82 0 + font_S, // S 83 0 + font_T, // T 84 0 + font_U, // U 85 0 + font_V, // V 86 0 + font_W, // W 87 0 + font_X, // X 88 0 + font_Y, // Y 89 0 + font_Z, // Z 90 0 + font_sbracketO, // [ 91 0 + font_bslash, // \ 92 0 + font_sbracketC, // ] 93 0 + font_caret, // ^ 94 0 + font_underscore, // _ 95 0 + font_grave, // ` 96 0 + font_a, // a 97 0 + font_b, // b 98 0 + font_c, // c 99 0 + font_d, // d 100 0 + font_e, // e 101 0 + font_f, // f 102 0 + font_g, // g 103 0 + font_h, // h 104 0 + font_i, // i 105 0 + font_j, // j 106 0 + font_k, // k 107 0 + font_l, // l 108 0 + font_m, // m 100 0 + font_n, // n 110 0 + font_o, // o 111 0 + font_p, // p 112 0 + font_q, // q 113 0 + font_r, // r 114 0 + font_s, // s 115 0 + font_t, // t 116 0 + font_u, // u 117 0 + font_v, // v 118 0 + font_w, // w 119 0 + font_x, // x 120 0 + font_y, // y 121 0 + font_z, // z 122 0 + font_fbracketO, // { 123 0 + font_pipe, // | 124 0 + font_fbracketC, // } 125 0 + font_tilda, // ~ 126 0 + + // Russian QWERTY-ЙЦУКЕР+ #ifdef LANG_RU_RU + font_notdef, // NONE NONE 1 + font_space, // 32 1 + font_exclamation, //! 33 1 + font_ru_ru_Ae, // Ð 34 1 + font_hashtag, // # 35 1 + font_semicolon, // ; 36 1 + font_percent, // % 37 1 + font_question, // ? 38 1 + font_ru_ru_ae, // Ñ 39 1 + font_bracketO, // ( 40 1 + font_bracketC, // ) 41 1 + font_multiply, // * 42 1 + font_plus, // + 43 1 + font_ru_ru_b, // б 44 1 + font_minus, // - 45 1 + font_ru_ru_yu, // ÑŽ 46 1 + font_dot, // . 47 1 + font_num0, // 0 48 1 + font_num1, // 1 49 1 + font_num2, // 2 50 1 + font_num3, // 3 51 1 + font_num4, // 4 52 1 + font_num5, // 5 53 1 + font_num6, // 6 54 1 + font_num7, // 7 55 1 + font_num8, // 8 56 1 + font_num9, // 9 57 1 + font_ru_ru_J, // Ж 58 1 + font_ru_ru_j, // ж 59 1 + font_ru_ru_B, // Б 60 1 + font_equal, // = 61 1 + font_ru_ru_Yu, // Ю 62 1 + font_comma, // , 63 1 + font_quote, // " 64 1 + font_ru_ru_F, // Ф 65 1 + font_ru_ru_I, // И 66 1 + font_C, // С 67 1 + font_ru_ru_V, // Ð’ 68 1 + font_ru_ru_U, // У 69 1 + font_A, // Ð 70 1 + font_ru_ru_P, // П 71 1 + font_P, // Ð 72 1 + font_ru_ru_Sh, // Ш 73 1 + font_O, // О 74 1 + font_ru_ru_L, // Л 75 1 + font_ru_ru_D, // Д 76 1 + font_ru_ru_Mz, // Ь 77 1 + font_T, // Т 78 1 + font_ru_ru_Sc, // Щ 79 1 + font_ru_ru_Z, // З 80 1 + font_ru_ru_Yi, // Й 81 1 + font_K, // К 82 1 + font_ru_ru_Y, // Ы 83 1 + font_E, // Е 84 1 + font_ru_ru_G, // Г 85 1 + font_M, // М 86 1 + font_ru_ru_C, // Ц 87 1 + font_ru_ru_Ch, // Ч 88 1 + font_H, // Ð 89 1 + font_ru_ru_Ya, // Я 90 1 + font_x, // Ñ… 91 1 + font_bslash, // \ 92 1 + font_ru_ru_tz, // ÑŠ 93 1 + font_colon, // : 94 1 + font_underscore, // _ 95 1 + font_ru_ru_ye, // Ñ‘ 96 1 + font_ru_ru_f, // Ñ„ 97 1 + font_ru_ru_i, // и 98 1 + font_c, // Ñ 99 1 + font_ru_ru_v, // в 100 1 + font_u, // у 101 1 + font_a, // а 102 1 + font_ru_ru_p, // п 103 1 + font_p, // Ñ€ 104 1 + font_ru_ru_sh, // ш 105 1 + font_o, // о 106 1 + font_ru_ru_l, // л 107 1 + font_ru_ru_d, // д 108 1 + font_ru_ru_mz, // ÑŒ 100 1 + font_ru_ru_t, // Ñ‚ 110 1 + font_ru_ru_sc, // щ 111 1 + font_ru_ru_z, // з 112 1 + font_ru_ru_yi, // й 113 1 + font_ru_ru_k, // к 114 1 + font_ru_ru_y, // Ñ‹ 115 1 + font_e, // е 116 1 + font_ru_ru_g, // г 117 1 + font_m, // м 118 1 + font_ru_ru_c, // ц 119 1 + font_ru_ru_ch, // ч 120 1 + font_ru_ru_n, // н 121 1 + font_ru_ru_ya, // Ñ 122 1 + font_X, // Ð¥ 123 1 + font_slash, // / 124 1 + font_ru_ru_Tz, // Ъ 125 1 + font_ru_ru_Ye, // Ð 126 1 + #endif + + font_null // Final element }; - \ No newline at end of file -- GitLab