Skip to content

Commit b34a009

Browse files
authored
🐛 Change font for selected language (#22381)
1 parent e55427a commit b34a009

39 files changed

Lines changed: 1095 additions & 1000 deletions

Marlin/src/core/multi_language.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,12 @@ typedef const char Language_Str[];
4242
#ifndef LCD_LANGUAGE_2
4343
#define LCD_LANGUAGE_2 LCD_LANGUAGE
4444
#endif
45-
4645
#ifndef LCD_LANGUAGE_3
4746
#define LCD_LANGUAGE_3 LCD_LANGUAGE_2
4847
#endif
49-
5048
#ifndef LCD_LANGUAGE_4
5149
#define LCD_LANGUAGE_4 LCD_LANGUAGE_3
5250
#endif
53-
5451
#ifndef LCD_LANGUAGE_5
5552
#define LCD_LANGUAGE_5 LCD_LANGUAGE_4
5653
#endif
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
/**
2+
* Marlin 3D Printer Firmware
3+
* Copyright (c) 2021 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
4+
*
5+
* This program is free software: you can redistribute it and/or modify
6+
* it under the terms of the GNU General Public License as published by
7+
* the Free Software Foundation, either version 3 of the License, or
8+
* (at your option) any later version.
9+
*
10+
* This program is distributed in the hope that it will be useful,
11+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
* GNU General Public License for more details.
14+
*
15+
* You should have received a copy of the GNU General Public License
16+
* along with this program. If not, see <https://www.gnu.org/licenses/>.
17+
*
18+
*/
19+
#pragma once
20+
21+
#include <U8glib-HAL.h>
22+
23+
#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data }

Marlin/src/lcd/dogm/fontdata/langdata_an.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
* Contents will be REPLACED by future processing!
44
* Use genallfont.sh to generate font data for updated languages.
55
*/
6-
#include <U8glib-HAL.h>
6+
#pragma once
77

8-
#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data }
9-
static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {};
8+
#include "langdata.h"
9+
10+
static const uxg_fontinfo_t g_fontinfo_an[] PROGMEM = {};

Marlin/src/lcd/dogm/fontdata/langdata_bg.h

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
* Contents will be REPLACED by future processing!
44
* Use genallfont.sh to generate font data for updated languages.
55
*/
6-
#include <U8glib-HAL.h>
6+
#pragma once
7+
8+
#include "langdata.h"
79

810
const u8g_fntpgm_uint8_t fontpage_8_144_149[96] U8G_FONT_SECTION("fontpage_8_144_149") = {
911
0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x90,0x95,0x00,0x07,0xFF,0x00,
@@ -64,14 +66,13 @@ const u8g_fntpgm_uint8_t fontpage_8_206_207[39] U8G_FONT_SECTION("fontpage_8_206
6466
0x00,0x05,0x05,0x05,0x06,0x00,0x00,0x90,0xA8,0xE8,0xA8,0x90,0x04,0x05,0x05,0x06,
6567
0x01,0x00,0x70,0x90,0x70,0x50,0x90};
6668

67-
#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data }
68-
static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {
69-
FONTDATA_ITEM(8, 144, 149, fontpage_8_144_149), // 'А' -- 'Е'
70-
FONTDATA_ITEM(8, 151, 152, fontpage_8_151_152), // 'З' -- 'И'
71-
FONTDATA_ITEM(8, 154, 164, fontpage_8_154_164), // 'К' -- 'Ф'
72-
FONTDATA_ITEM(8, 166, 166, fontpage_8_166_166), // 'Ц' -- 'Ц'
73-
FONTDATA_ITEM(8, 175, 195, fontpage_8_175_195), // 'Я' -- 'у'
74-
FONTDATA_ITEM(8, 197, 200, fontpage_8_197_200), // 'х' -- 'ш'
75-
FONTDATA_ITEM(8, 202, 202, fontpage_8_202_202), // 'ъ' -- 'ъ'
76-
FONTDATA_ITEM(8, 206, 207, fontpage_8_206_207), // 'ю' -- 'я'
69+
static const uxg_fontinfo_t g_fontinfo_bg[] PROGMEM = {
70+
FONTDATA_ITEM(8, 144, 149, fontpage_8_144_149), // 'А' -- 'Е'
71+
FONTDATA_ITEM(8, 151, 152, fontpage_8_151_152), // 'З' -- 'И'
72+
FONTDATA_ITEM(8, 154, 164, fontpage_8_154_164), // 'К' -- 'Ф'
73+
FONTDATA_ITEM(8, 166, 166, fontpage_8_166_166), // 'Ц' -- 'Ц'
74+
FONTDATA_ITEM(8, 175, 195, fontpage_8_175_195), // 'Я' -- 'у'
75+
FONTDATA_ITEM(8, 197, 200, fontpage_8_197_200), // 'х' -- 'ш'
76+
FONTDATA_ITEM(8, 202, 202, fontpage_8_202_202), // 'ъ' -- 'ъ'
77+
FONTDATA_ITEM(8, 206, 207, fontpage_8_206_207), // 'ю' -- 'я'
7778
};

Marlin/src/lcd/dogm/fontdata/langdata_ca.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
* Contents will be REPLACED by future processing!
44
* Use genallfont.sh to generate font data for updated languages.
55
*/
6-
#include <U8glib-HAL.h>
6+
#pragma once
77

8-
#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data }
9-
static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {};
8+
#include "langdata.h"
9+
10+
static const uxg_fontinfo_t g_fontinfo_ca[] PROGMEM = {};

Marlin/src/lcd/dogm/fontdata/langdata_cz.h

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
* Contents will be REPLACED by future processing!
44
* Use genallfont.sh to generate font data for updated languages.
55
*/
6-
#include <U8glib-HAL.h>
6+
#pragma once
7+
8+
#include "langdata.h"
79

810
const u8g_fntpgm_uint8_t fontpage_2_140_141[47] U8G_FONT_SECTION("fontpage_2_140_141") = {
911
0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x8C,0x8D,0x00,0x0A,0x00,0x00,
@@ -40,15 +42,14 @@ const u8g_fntpgm_uint8_t fontpage_2_253_254[47] U8G_FONT_SECTION("fontpage_2_253
4042
0x00,0x05,0x0A,0x0A,0x06,0x00,0x00,0x50,0x20,0x00,0xF8,0x08,0x10,0x20,0x40,0x80,
4143
0xF8,0x05,0x08,0x08,0x06,0x00,0x00,0x50,0x20,0x00,0xF8,0x10,0x20,0x40,0xF8};
4244

43-
#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data }
44-
static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {
45-
FONTDATA_ITEM(2, 140, 141, fontpage_2_140_141), // 'Č' -- 'č'
46-
FONTDATA_ITEM(2, 143, 143, fontpage_2_143_143), // 'ď' -- 'ď'
47-
FONTDATA_ITEM(2, 154, 155, fontpage_2_154_155), // 'Ě' -- 'ě'
48-
FONTDATA_ITEM(2, 200, 200, fontpage_2_200_200), // 'ň' -- 'ň'
49-
FONTDATA_ITEM(2, 216, 217, fontpage_2_216_217), // 'Ř' -- 'ř'
50-
FONTDATA_ITEM(2, 224, 225, fontpage_2_224_225), // 'Š' -- 'š'
51-
FONTDATA_ITEM(2, 229, 229, fontpage_2_229_229), // 'ť' -- 'ť'
52-
FONTDATA_ITEM(2, 239, 239, fontpage_2_239_239), // 'ů' -- 'ů'
53-
FONTDATA_ITEM(2, 253, 254, fontpage_2_253_254), // 'Ž' -- 'ž'
45+
static const uxg_fontinfo_t g_fontinfo_cz[] PROGMEM = {
46+
FONTDATA_ITEM(2, 140, 141, fontpage_2_140_141), // 'Č' -- 'č'
47+
FONTDATA_ITEM(2, 143, 143, fontpage_2_143_143), // 'ď' -- 'ď'
48+
FONTDATA_ITEM(2, 154, 155, fontpage_2_154_155), // 'Ě' -- 'ě'
49+
FONTDATA_ITEM(2, 200, 200, fontpage_2_200_200), // 'ň' -- 'ň'
50+
FONTDATA_ITEM(2, 216, 217, fontpage_2_216_217), // 'Ř' -- 'ř'
51+
FONTDATA_ITEM(2, 224, 225, fontpage_2_224_225), // 'Š' -- 'š'
52+
FONTDATA_ITEM(2, 229, 229, fontpage_2_229_229), // 'ť' -- 'ť'
53+
FONTDATA_ITEM(2, 239, 239, fontpage_2_239_239), // 'ů' -- 'ů'
54+
FONTDATA_ITEM(2, 253, 254, fontpage_2_253_254), // 'Ž' -- 'ž'
5455
};

Marlin/src/lcd/dogm/fontdata/langdata_da.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
* Contents will be REPLACED by future processing!
44
* Use genallfont.sh to generate font data for updated languages.
55
*/
6-
#include <U8glib-HAL.h>
6+
#pragma once
77

8-
#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data }
9-
static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {};
8+
#include "langdata.h"
9+
10+
static const uxg_fontinfo_t g_fontinfo_da[] PROGMEM = {};

Marlin/src/lcd/dogm/fontdata/langdata_de.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
* Contents will be REPLACED by future processing!
44
* Use genallfont.sh to generate font data for updated languages.
55
*/
6-
#include <U8glib-HAL.h>
6+
#pragma once
77

8-
#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data }
9-
static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {};
8+
#include "langdata.h"
9+
10+
static const uxg_fontinfo_t g_fontinfo_de[] PROGMEM = {};

Marlin/src/lcd/dogm/fontdata/langdata_el.h

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
* Contents will be REPLACED by future processing!
44
* Use genallfont.sh to generate font data for updated languages.
55
*/
6-
#include <U8glib-HAL.h>
6+
#pragma once
7+
8+
#include "langdata.h"
79

810
const u8g_fntpgm_uint8_t fontpage_7_136_136[33] U8G_FONT_SECTION("fontpage_7_136_136") = {
911
0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x88,0x88,0x00,0x0A,0x00,0x00,
@@ -75,16 +77,15 @@ const u8g_fntpgm_uint8_t fontpage_64_166_166[24] U8G_FONT_SECTION("fontpage_64_1
7577
0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xA6,0xA6,0x00,0x01,0x00,0x00,
7678
0x00,0x05,0x01,0x01,0x06,0x00,0x00,0xA8};
7779

78-
#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data }
79-
static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {
80-
FONTDATA_ITEM(7, 136, 136, fontpage_7_136_136), // 'Έ' -- 'Έ'
81-
FONTDATA_ITEM(7, 145, 157, fontpage_7_145_157), // 'Α' -- 'Ν'
82-
FONTDATA_ITEM(7, 159, 161, fontpage_7_159_161), // 'Ο' -- 'Ρ'
83-
FONTDATA_ITEM(7, 163, 167, fontpage_7_163_167), // 'Σ' -- 'Χ'
84-
FONTDATA_ITEM(7, 172, 175, fontpage_7_172_175), // 'ά' -- 'ί'
85-
FONTDATA_ITEM(7, 177, 181, fontpage_7_177_181), // 'α' -- 'ε'
86-
FONTDATA_ITEM(7, 183, 199, fontpage_7_183_199), // 'η' -- 'χ'
87-
FONTDATA_ITEM(7, 201, 201, fontpage_7_201_201), // 'ω' -- 'ω'
88-
FONTDATA_ITEM(7, 204, 206, fontpage_7_204_206), // 'ό' -- 'ώ'
89-
FONTDATA_ITEM(64, 166, 166, fontpage_64_166_166), // '…' -- '…'
80+
static const uxg_fontinfo_t g_fontinfo_el[] PROGMEM = {
81+
FONTDATA_ITEM(7, 136, 136, fontpage_7_136_136), // 'Έ' -- 'Έ'
82+
FONTDATA_ITEM(7, 145, 157, fontpage_7_145_157), // 'Α' -- 'Ν'
83+
FONTDATA_ITEM(7, 159, 161, fontpage_7_159_161), // 'Ο' -- 'Ρ'
84+
FONTDATA_ITEM(7, 163, 167, fontpage_7_163_167), // 'Σ' -- 'Χ'
85+
FONTDATA_ITEM(7, 172, 175, fontpage_7_172_175), // 'ά' -- 'ί'
86+
FONTDATA_ITEM(7, 177, 181, fontpage_7_177_181), // 'α' -- 'ε'
87+
FONTDATA_ITEM(7, 183, 199, fontpage_7_183_199), // 'η' -- 'χ'
88+
FONTDATA_ITEM(7, 201, 201, fontpage_7_201_201), // 'ω' -- 'ω'
89+
FONTDATA_ITEM(7, 204, 206, fontpage_7_204_206), // 'ό' -- 'ώ'
90+
FONTDATA_ITEM(64, 166, 166, fontpage_64_166_166), // '…' -- '…'
9091
};

Marlin/src/lcd/dogm/fontdata/langdata_el_gr.h

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
* Contents will be REPLACED by future processing!
44
* Use genallfont.sh to generate font data for updated languages.
55
*/
6-
#include <U8glib-HAL.h>
6+
#pragma once
7+
8+
#include "langdata.h"
79

810
const u8g_fntpgm_uint8_t fontpage_7_136_136[33] U8G_FONT_SECTION("fontpage_7_136_136") = {
911
0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0x88,0x88,0x00,0x0A,0x00,0x00,
@@ -75,16 +77,15 @@ const u8g_fntpgm_uint8_t fontpage_64_166_166[24] U8G_FONT_SECTION("fontpage_64_1
7577
0x00,0x0C,0x0F,0x00,0xFE,0x00,0x00,0x00,0x00,0x00,0xA6,0xA6,0x00,0x01,0x00,0x00,
7678
0x00,0x05,0x01,0x01,0x06,0x00,0x00,0xA8};
7779

78-
#define FONTDATA_ITEM(page, begin, end, data) { page, begin, end, COUNT(data), data }
79-
static const uxg_fontinfo_t g_fontinfo[] PROGMEM = {
80-
FONTDATA_ITEM(7, 136, 136, fontpage_7_136_136), // 'Έ' -- 'Έ'
81-
FONTDATA_ITEM(7, 145, 157, fontpage_7_145_157), // 'Α' -- 'Ν'
82-
FONTDATA_ITEM(7, 159, 161, fontpage_7_159_161), // 'Ο' -- 'Ρ'
83-
FONTDATA_ITEM(7, 163, 167, fontpage_7_163_167), // 'Σ' -- 'Χ'
84-
FONTDATA_ITEM(7, 172, 175, fontpage_7_172_175), // 'ά' -- 'ί'
85-
FONTDATA_ITEM(7, 177, 181, fontpage_7_177_181), // 'α' -- 'ε'
86-
FONTDATA_ITEM(7, 183, 199, fontpage_7_183_199), // 'η' -- 'χ'
87-
FONTDATA_ITEM(7, 201, 201, fontpage_7_201_201), // 'ω' -- 'ω'
88-
FONTDATA_ITEM(7, 204, 206, fontpage_7_204_206), // 'ό' -- 'ώ'
89-
FONTDATA_ITEM(64, 166, 166, fontpage_64_166_166), // '…' -- '…'
80+
static const uxg_fontinfo_t g_fontinfo_el_gr[] PROGMEM = {
81+
FONTDATA_ITEM(7, 136, 136, fontpage_7_136_136), // 'Έ' -- 'Έ'
82+
FONTDATA_ITEM(7, 145, 157, fontpage_7_145_157), // 'Α' -- 'Ν'
83+
FONTDATA_ITEM(7, 159, 161, fontpage_7_159_161), // 'Ο' -- 'Ρ'
84+
FONTDATA_ITEM(7, 163, 167, fontpage_7_163_167), // 'Σ' -- 'Χ'
85+
FONTDATA_ITEM(7, 172, 175, fontpage_7_172_175), // 'ά' -- 'ί'
86+
FONTDATA_ITEM(7, 177, 181, fontpage_7_177_181), // 'α' -- 'ε'
87+
FONTDATA_ITEM(7, 183, 199, fontpage_7_183_199), // 'η' -- 'χ'
88+
FONTDATA_ITEM(7, 201, 201, fontpage_7_201_201), // 'ω' -- 'ω'
89+
FONTDATA_ITEM(7, 204, 206, fontpage_7_204_206), // 'ό' -- 'ώ'
90+
FONTDATA_ITEM(64, 166, 166, fontpage_64_166_166), // '…' -- '…'
9091
};

0 commit comments

Comments
 (0)