📄 demofont.cpp
字号:
{
EX_FONT_CHAR("我")
EX_FONT_ANSI_VAL(0xd2ce)
{0x06, 0x40, 0x38, 0x50, 0x08, 0x48, 0x08, 0x48, 0x08, 0x40, 0xff, 0xfe, 0x08, 0x40, 0x08, 0x48, 0x0e, 0x28, 0x38, 0x30, 0xc8, 0x20, 0x08, 0x50, 0x09, 0x92, 0x08, 0x0a, 0x28, 0x06, 0x10, 0x02}
},
{
EX_FONT_CHAR("字")
EX_FONT_ANSI_VAL(0xd6d7)
{0x02, 0x00, 0x01, 0x00, 0x3f, 0xfc, 0x20, 0x04, 0x40, 0x08, 0x1f, 0xe0, 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x7f, 0xfe, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x05, 0x00, 0x02, 0x00}
},
{
EX_FONT_CHAR("宽")
EX_FONT_ANSI_VAL(0xedbf)
{0x02, 0x00, 0x01, 0x00, 0x7f, 0xfe, 0x44, 0x44, 0xbf, 0xf8, 0x04, 0x40, 0x00, 0x00, 0x1f, 0xf0, 0x11, 0x10, 0x11, 0x10, 0x11, 0x10, 0x12, 0x90, 0x02, 0x84, 0x04, 0x84, 0x18, 0x7c, 0x60, 0x00}
},
{
EX_FONT_CHAR("明")
EX_FONT_ANSI_VAL(0xf7c3)
{0x00, 0xfc, 0x7c, 0x84, 0x44, 0x84, 0x44, 0x84, 0x44, 0xfc, 0x7c, 0x84, 0x44, 0x84, 0x44, 0x84, 0x44, 0xfc, 0x7c, 0x84, 0x00, 0x84, 0x01, 0x04, 0x01, 0x04, 0x02, 0x04, 0x04, 0x14, 0x00, 0x08}
},
{
EX_FONT_CHAR("国")
EX_FONT_ANSI_VAL(0xfab9)
{0x00, 0x00, 0x7f, 0xfc, 0x40, 0x04, 0x5f, 0xf4, 0x41, 0x04, 0x41, 0x04, 0x41, 0x04, 0x4f, 0xe4, 0x41, 0x44, 0x41, 0x24, 0x41, 0x24, 0x5f, 0xf4, 0x40, 0x04, 0x40, 0x04, 0x7f, 0xfc, 0x40, 0x04}
},
{
EX_FONT_CHAR("符")
EX_FONT_ANSI_VAL(0xfbb7)
{0x20, 0x40, 0x3f, 0x7e, 0x48, 0x50, 0x44, 0x88, 0x89, 0x10, 0x08, 0x10, 0x17, 0xfe, 0x10, 0x10, 0x32, 0x10, 0x51, 0x10, 0x91, 0x90, 0x10, 0x90, 0x10, 0x10, 0x10, 0x10, 0x10, 0x50, 0x10, 0x20}
}
};
#undef thin_char_nr
#define thin_char_nr sizeof(thin_ansi_font8x16)/sizeof(thin_ansi_font8x16[0])
#undef wide_char_nr
#define wide_char_nr sizeof(wide_ansi_font16x16)/sizeof(wide_ansi_font16x16[0])
static EXFONT_DATA_ITEM thin_font16_items[thin_char_nr];
static EXFONT_DATA_ITEM wide_font16_items[wide_char_nr];
static EXFONT_DATA thin_font16;
static EXFONT_DATA wide_font16;
EXFONT g_ansi_font16;
#ifndef RGB
#define RGB(r, g, b) (r) << 16 | (g) << 8 | (b)
#endif
void install_ansi_16x16_font(draw_pixel_func my_draw_pixel)
{
size_t i = 0;
for(i = 0; i < thin_char_nr; i++)
{
thin_font16_items[i].value = thin_ansi_font8x16[i].value;
thin_font16_items[i].data = (unsigned char*)thin_ansi_font8x16[i].data;
}
for(i = 0; i < wide_char_nr; i++)
{
wide_font16_items[i].value = wide_ansi_font16x16[i].value;
wide_font16_items[i].data = (unsigned char*)wide_ansi_font16x16[i].data;
}
EXFONT_data_init(&thin_font16, 8, 16, thin_char_nr, thin_font16_items);
EXFONT_data_init(&wide_font16, 16, 16, wide_char_nr, wide_font16_items);
EXFONT_init(&g_ansi_font16, "g_ansi_font16",
RGB(255, 0, 0),
RGB(0, 255, 0),
BKMODE_TRANSPARENT,
my_draw_pixel);
EXFONT_set_thin_font_data(&g_ansi_font16, &thin_font16);
EXFONT_set_wide_font_data(&g_ansi_font16, &wide_font16);
return;
}
/////////////////////////////////////////////////////////////
struct _thin_unicode_font16x32 {unsigned short value; unsigned char data[2][32];} thin_unicode_font16x32[25] =
{
{
EX_FONT_CHAR(" ")
EX_FONT_UNICODE_VAL(0x0020)
{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, 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, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("1")
EX_FONT_UNICODE_VAL(0x0031)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x80, 0x1f, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x03, 0xc0, 0x1f, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("2")
EX_FONT_UNICODE_VAL(0x0032)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xe0, 0x08, 0x38, 0x10, 0x18, 0x20, 0x0c, 0x20, 0x0c, 0x30, 0x0c, 0x30, 0x0c, 0x00, 0x0c, 0x00, 0x18, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x04, 0x08, 0x04, 0x10, 0x04, 0x20, 0x0c, 0x3f, 0xf8, 0x3f, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("3")
EX_FONT_UNICODE_VAL(0x0033)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xc0, 0x18, 0x70, 0x30, 0x30, 0x30, 0x18, 0x30, 0x18, 0x30, 0x18, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x03, 0xc0, 0x00, 0x70, 0x00, 0x18, 0x00, 0x08, 0x00, 0x0c, 0x00, 0x0c, 0x30, 0x0c, 0x30, 0x0c, 0x30, 0x08, 0x30, 0x18, 0x18, 0x30, 0x07, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("4")
EX_FONT_UNICODE_VAL(0x0034)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x70, 0x00, 0x70, 0x00, 0xf0, 0x01, 0x70, 0x01, 0x70, 0x02, 0x70, 0x06, 0x70, 0x04, 0x70, 0x08, 0x70, 0x08, 0x70, 0x10, 0x70, 0x20, 0x70, 0x20, 0x70, 0x7f, 0xfe, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x03, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("5")
EX_FONT_UNICODE_VAL(0x0035)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xfc, 0x0f, 0xfc, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x10, 0x00, 0x10, 0x00, 0x13, 0xe0, 0x14, 0x30, 0x18, 0x18, 0x10, 0x08, 0x00, 0x0c, 0x00, 0x0c, 0x00, 0x0c, 0x00, 0x0c, 0x30, 0x0c, 0x30, 0x0c, 0x20, 0x18, 0x20, 0x18, 0x10, 0x30, 0x0f, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("6")
EX_FONT_UNICODE_VAL(0x0036)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xf0, 0x03, 0x08, 0x04, 0x0c, 0x08, 0x0c, 0x18, 0x00, 0x18, 0x00, 0x10, 0x00, 0x30, 0x00, 0x31, 0xf0, 0x36, 0x18, 0x3c, 0x0c, 0x38, 0x06, 0x30, 0x06, 0x30, 0x06, 0x30, 0x06, 0x30, 0x06, 0x18, 0x06, 0x18, 0x04, 0x0c, 0x0c, 0x06, 0x18, 0x03, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("7")
EX_FONT_UNICODE_VAL(0x0037)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xfc, 0x1f, 0xfc, 0x38, 0x08, 0x30, 0x10, 0x20, 0x10, 0x20, 0x20, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("8")
EX_FONT_UNICODE_VAL(0x0038)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xe0, 0x0c, 0x30, 0x18, 0x18, 0x30, 0x0c, 0x30, 0x0c, 0x30, 0x0c, 0x38, 0x0c, 0x1c, 0x18, 0x0e, 0x10, 0x07, 0xe0, 0x0d, 0xe0, 0x18, 0x70, 0x30, 0x38, 0x60, 0x1c, 0x60, 0x0c, 0x60, 0x0c, 0x60, 0x0c, 0x60, 0x0c, 0x30, 0x18, 0x18, 0x30, 0x07, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR(":")
EX_FONT_UNICODE_VAL(0x003a)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x03, 0xc0, 0x03, 0xc0, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x03, 0xc0, 0x03, 0xc0, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("a")
EX_FONT_UNICODE_VAL(0x0061)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xc0, 0x18, 0x60, 0x30, 0x30, 0x30, 0x30, 0x00, 0x30, 0x01, 0xf0, 0x0e, 0x30, 0x38, 0x30, 0x30, 0x30, 0x60, 0x30, 0x60, 0x30, 0x60, 0x32, 0x30, 0xf2, 0x1f, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("b")
EX_FONT_UNICODE_VAL(0x0062)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x78, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0xf0, 0x1b, 0x18, 0x1c, 0x0c, 0x1c, 0x06, 0x18, 0x06, 0x18, 0x06, 0x18, 0x06, 0x18, 0x06, 0x18, 0x06, 0x18, 0x06, 0x18, 0x04, 0x1c, 0x0c, 0x1e, 0x18, 0x13, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("c")
EX_FONT_UNICODE_VAL(0x0063)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xe0, 0x0e, 0x30, 0x18, 0x18, 0x18, 0x18, 0x30, 0x18, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x04, 0x18, 0x04, 0x18, 0x08, 0x0c, 0x10, 0x03, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("d")
EX_FONT_UNICODE_VAL(0x0064)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x78, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x07, 0xd8, 0x0c, 0x38, 0x18, 0x18, 0x18, 0x18, 0x30, 0x18, 0x30, 0x18, 0x30, 0x18, 0x30, 0x18, 0x30, 0x18, 0x30, 0x18, 0x10, 0x18, 0x18, 0x38, 0x0c, 0x5e, 0x07, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("e")
EX_FONT_UNICODE_VAL(0x0065)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xe0, 0x0c, 0x30, 0x18, 0x18, 0x10, 0x08, 0x30, 0x0c, 0x30, 0x0c, 0x3f, 0xfc, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x18, 0x04, 0x18, 0x08, 0x0e, 0x18, 0x03, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("f")
EX_FONT_UNICODE_VAL(0x0066)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x01, 0xc3, 0x01, 0x03, 0x03, 0x03, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x3f, 0xf8, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x1f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("g")
EX_FONT_UNICODE_VAL(0x0067)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xee, 0x0c, 0x36, 0x08, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x08, 0x18, 0x0c, 0x30, 0x0f, 0xe0, 0x18, 0x00, 0x18, 0x00, 0x0f, 0xf0, 0x0f, 0xfc, 0x10, 0x0e, 0x30, 0x06, 0x30, 0x06, 0x30, 0x06, 0x1c, 0x1c, 0x07, 0xf0, 0x00, 0x00}
},
{
EX_FONT_CHAR("h")
EX_FONT_UNICODE_VAL(0x0068)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x78, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x19, 0xf0, 0x1b, 0x18, 0x1c, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x7e, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("i")
EX_FONT_UNICODE_VAL(0x0069)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1f, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x1f, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
},
{
EX_FONT_CHAR("n")
EX_FONT_UNICODE_VAL(0x006e)
{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x78, 0xf0, 0x1b, 0x18, 0x1c, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x18, 0x0c, 0x7e, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -