📄 fonts.c
字号:
/***************************************************************************
* *
* FILE: FONTS.C *
* LCD Display Controller font set. Supports three fonts that are *
* defined in bit map tables in this source file. The font tables in *
* this file were derived from a conversion program called FontGen *
* by Bahri Okuroglu - bahrio@yahoo.com. *
* *
* Copyright (C) 2003 by Carousel Design Solutions *
* *
* Written by: *
* Michael J. Karas *
* Carousel Design Solutions *
* 4217 Grimes Ave South *
* Edina MN 55416 *
* (952) 929-7537 *
* *
***************************************************************************/
#include <stdarg.h>
#include "fonts.h"
/* definition tables for three fonts as follows: */
/* all fonts include 96 glyphs from 0x20 to 0x7F that are in ASCII order */
/* */
/* Font #0: normal_font - a light variable width font that is 13 pixels high */
/* Font #1: bold_font - a heavy variable width font that is 13 pixels high */
/* Font #2: bigbold_font - a large fixed width font that is 32 pixels high */
/* */
struct FONT_DEF code fonts[] = {
{2, 13, normal_glyph_table, 0, normal_width_table}, /* normal */
{2, 13, bold_glyph_table, 0, bold_width_table}, /* bold */
{3, 32, bigbold_glyph_table, 20, NULL}, /* bigbold */
};
unsigned char code normal_width_table[] = {
3, /* ' ' */
3, /* '!' */
5, /* '"' */
7, /* '#' */
6, /* '$' */
8, /* '%' */
6, /* '&' */
2, /* ''' */
3, /* '(' */
3, /* ')' */
4, /* '*' */
6, /* '+' */
3, /* ',' */
3, /* '-' */
3, /* '.' */
5, /* '/' */
6, /* '0' */
6, /* '1' */
6, /* '2' */
6, /* '3' */
6, /* '4' */
6, /* '5' */
6, /* '6' */
6, /* '7' */
6, /* '8' */
6, /* '9' */
3, /* ':' */
3, /* ';' */
6, /* '<' */
6, /* '=' */
6, /* '>' */
6, /* '?' */
11, /* '@' */
7, /* 'A' */
7, /* 'B' */
7, /* 'C' */
8, /* 'D' */
7, /* 'E' */
6, /* 'F' */
8, /* 'G' */
8, /* 'H' */
3, /* 'I' */
5, /* 'J' */
7, /* 'K' */
6, /* 'L' */
9, /* 'M' */
8, /* 'N' */
8, /* 'O' */
7, /* 'P' */
8, /* 'Q' */
8, /* 'R' */
7, /* 'S' */
7, /* 'T' */
8, /* 'U' */
7, /* 'V' */
11, /* 'W' */
7, /* 'X' */
7, /* 'Y' */
7, /* 'Z' */
3, /* '[' */
5, /* '\' */
3, /* ']' */
6, /* '^' */
6, /* '_' */
3, /* '`' */
6, /* 'a' */
6, /* 'b' */
6, /* 'c' */
6, /* 'd' */
6, /* 'e' */
3, /* 'f' */
6, /* 'g' */
6, /* 'h' */
2, /* 'i' */
2, /* 'j' */
6, /* 'k' */
2, /* 'l' */
8, /* 'm' */
6, /* 'n' */
6, /* 'o' */
6, /* 'p' */
6, /* 'q' */
3, /* 'r' */
5, /* 's' */
3, /* 't' */
6, /* 'u' */
6, /* 'v' */
8, /* 'w' */
5, /* 'x' */
5, /* 'y' */
5, /* 'z' */
4, /* '{' */
2, /* '|' */
4, /* '}' */
7, /* '~' */
};
unsigned char code normal_glyph_table[] = {
/* ' ' charwidth: 3 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '!' charwidth: 3 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x00, 0x00, /* [ ] */
0x40, 0x00, /* [ * ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '"' charwidth: 5 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x48, 0x00, /* [ * *] */
0x48, 0x00, /* [ * *] */
0x48, 0x00, /* [ * *] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '#' charwidth: 7 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x24, 0x00, /* [ * * ] */
0x24, 0x00, /* [ * * ] */
0x7E, 0x00, /* [ ******] */
0x24, 0x00, /* [ * * ] */
0x24, 0x00, /* [ * * ] */
0x24, 0x00, /* [ * * ] */
0x7E, 0x00, /* [ ******] */
0x24, 0x00, /* [ * * ] */
0x24, 0x00, /* [ * * ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '$' charwidth: 6 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x10, 0x00, /* [ * ] */
0x38, 0x00, /* [ *** ] */
0x54, 0x00, /* [ * * *] */
0x50, 0x00, /* [ * * ] */
0x30, 0x00, /* [ ** ] */
0x18, 0x00, /* [ ** ] */
0x14, 0x00, /* [ * *] */
0x54, 0x00, /* [ * * *] */
0x38, 0x00, /* [ *** ] */
0x10, 0x00, /* [ * ] */
0x00, 0x00, /* [ ] */
/* '%' charwidth: 8 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x30, 0x00, /* [ ** ] */
0x49, 0x00, /* [ * * *] */
0x32, 0x00, /* [ ** * ] */
0x04, 0x00, /* [ * ] */
0x08, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x26, 0x00, /* [ * ** ] */
0x49, 0x00, /* [ * * *] */
0x06, 0x00, /* [ ** ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '&' charwidth: 6 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x20, 0x00, /* [ * ] */
0x50, 0x00, /* [ * * ] */
0x50, 0x00, /* [ * * ] */
0x20, 0x00, /* [ * ] */
0x20, 0x00, /* [ * ] */
0x54, 0x00, /* [ * * *] */
0x48, 0x00, /* [ * * ] */
0x48, 0x00, /* [ * * ] */
0x34, 0x00, /* [ ** *] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* ''' charwidth: 2 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x40, 0x00, /* [ *] */
0x40, 0x00, /* [ *] */
0x40, 0x00, /* [ *] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '(' charwidth: 3 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x20, 0x00, /* [ *] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x20, 0x00, /* [ *] */
/* ')' charwidth: 3 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x40, 0x00, /* [ * ] */
0x20, 0x00, /* [ *] */
0x20, 0x00, /* [ *] */
0x20, 0x00, /* [ *] */
0x20, 0x00, /* [ *] */
0x20, 0x00, /* [ *] */
0x20, 0x00, /* [ *] */
0x20, 0x00, /* [ *] */
0x20, 0x00, /* [ *] */
0x20, 0x00, /* [ *] */
0x40, 0x00, /* [ * ] */
/* '*' charwidth: 4 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x50, 0x00, /* [ * *] */
0x20, 0x00, /* [ * ] */
0x50, 0x00, /* [ * *] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '+' charwidth: 6 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x10, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x7C, 0x00, /* [ *****] */
0x10, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* ',' charwidth: 3 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x20, 0x00, /* [ *] */
0x40, 0x00, /* [ * ] */
0x00, 0x00, /* [ ] */
/* '-' charwidth: 3 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x60, 0x00, /* [ **] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '.' charwidth: 3 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x40, 0x00, /* [ * ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '/' charwidth: 5 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x08, 0x00, /* [ *] */
0x08, 0x00, /* [ *] */
0x08, 0x00, /* [ *] */
0x10, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x20, 0x00, /* [ * ] */
0x20, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '0' charwidth: 6 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x38, 0x00, /* [ *** ] */
0x44, 0x00, /* [ * *] */
0x44, 0x00, /* [ * *] */
0x44, 0x00, /* [ * *] */
0x44, 0x00, /* [ * *] */
0x44, 0x00, /* [ * *] */
0x44, 0x00, /* [ * *] */
0x44, 0x00, /* [ * *] */
0x38, 0x00, /* [ *** ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '1' charwidth: 6 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x10, 0x00, /* [ * ] */
0x70, 0x00, /* [ *** ] */
0x10, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '2' charwidth: 6 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x38, 0x00, /* [ *** ] */
0x44, 0x00, /* [ * *] */
0x04, 0x00, /* [ *] */
0x04, 0x00, /* [ *] */
0x08, 0x00, /* [ * ] */
0x10, 0x00, /* [ * ] */
0x20, 0x00, /* [ * ] */
0x40, 0x00, /* [ * ] */
0x7C, 0x00, /* [ *****] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '3' charwidth: 6 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
0x38, 0x00, /* [ *** ] */
0x44, 0x00, /* [ * *] */
0x04, 0x00, /* [ *] */
0x04, 0x00, /* [ *] */
0x18, 0x00, /* [ ** ] */
0x04, 0x00, /* [ *] */
0x04, 0x00, /* [ *] */
0x44, 0x00, /* [ * *] */
0x38, 0x00, /* [ *** ] */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
/* '4' charwidth: 6 */
0x00, 0x00, /* [ ] */
0x00, 0x00, /* [ ] */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -