120 lines
2.5 KiB
C
120 lines
2.5 KiB
C
#ifndef PSEUDOGRAPHIC_FONT_5_H
|
|
#define PSEUDOGRAPHIC_FONT_5_H
|
|
|
|
// Псевдографический шрифт для цифр 0-9 и разделителя (:).
|
|
// Каждый символ представлен 5 строками по 5 символов (UTF-8).
|
|
// Используемые символы: ╔ ═ ╗ ╚ ╝ ╣ и пробел.
|
|
|
|
// Определение псевдографического шрифта (5x5 символа)
|
|
static const char* font_5[11][5] = {
|
|
// 0
|
|
{
|
|
"╔═══╗",
|
|
"║ ║",
|
|
"║ ║",
|
|
"║ ║",
|
|
"╚═══╝"
|
|
},
|
|
// 1
|
|
{
|
|
" ╔═╗",
|
|
" ║ ║",
|
|
" ║",
|
|
" ║",
|
|
" ═╝"
|
|
},
|
|
// 2
|
|
{
|
|
"╔═══╗",
|
|
" ║",
|
|
"╔═══╝",
|
|
"║ ",
|
|
"╚═══╝"
|
|
},
|
|
// 3
|
|
{
|
|
"╔═══╗",
|
|
" ║",
|
|
" ══╣",
|
|
" ║",
|
|
"╚═══╝"
|
|
},
|
|
// 4
|
|
{
|
|
"╔ ╗",
|
|
"║ ║",
|
|
"╚═══╣",
|
|
" ║",
|
|
" ╝"
|
|
},
|
|
// 5
|
|
{
|
|
"╔═══╗",
|
|
"║ ",
|
|
"╚═══╗",
|
|
" ║",
|
|
"╚═══╝"
|
|
},
|
|
// 6
|
|
{
|
|
"╔═══╗",
|
|
"║ ",
|
|
"╠═══╗",
|
|
"║ ║",
|
|
"╚═══╝"
|
|
},
|
|
// 7
|
|
{
|
|
"╔═══╗",
|
|
" ║",
|
|
" ══╣",
|
|
" ║",
|
|
" ╝"
|
|
},
|
|
// 8
|
|
{
|
|
"╔═══╗",
|
|
"║ ║",
|
|
"╠═══╣",
|
|
"║ ║",
|
|
"╚═══╝"
|
|
},
|
|
// 9
|
|
{
|
|
"╔═══╗",
|
|
"║ ║",
|
|
"╚═══╣",
|
|
" ║",
|
|
"╚═══╝"
|
|
},
|
|
// : (разделитель)
|
|
{
|
|
" ╔═╗ ",
|
|
" ╚═╝ ",
|
|
" ╔═╗ ",
|
|
" ╚═╝ ",
|
|
" "
|
|
}
|
|
};
|
|
|
|
// Пустой символ для некорректных входных данных
|
|
static const char* empty_char[5] = {
|
|
" ",
|
|
" ",
|
|
" ",
|
|
" ",
|
|
" "
|
|
};
|
|
|
|
// Функция для получения псевдографического символа по значению
|
|
const char** get_pseudographic_char_5(char c) {
|
|
if (c >= '0' && c <= '9') {
|
|
return font_5[c - '0'];
|
|
} else if (c == ':') {
|
|
return font_5[10];
|
|
}
|
|
return empty_char;
|
|
}
|
|
|
|
#endif
|