Files
CMC/pseudographic_font_5.h

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