diff --git a/Drivers/BSP/UI/ui_font_cn_12.c b/Drivers/BSP/UI/ui_font_cn_12.c index 1813a705..d31d858f 100644 --- a/Drivers/BSP/UI/ui_font_cn_12.c +++ b/Drivers/BSP/UI/ui_font_cn_12.c @@ -307,6 +307,19 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { /* U+007E "~" */ 0x40, 0x81, 0x80, + /* U+2160 "Ⅰ" */ + 0xe9, 0x24, 0x92, 0xe0, + + /* U+2161 "Ⅱ" */ + 0xee, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0xee, + + /* U+2162 "Ⅲ" */ + 0xee, 0xe8, 0x89, 0x11, 0x22, 0x24, 0x44, 0x88, + 0x91, 0x12, 0x22, 0xee, 0xe0, + + /* U+4E00 "一" */ + 0xff, 0xe0, + /* U+4E09 "三" */ 0x7f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xff, 0x80, @@ -321,6 +334,10 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x81, 0x17, 0xff, 0x4, 0x4f, 0xf8, 0x10, 0x6, 0x0, + /* U+4E8C "二" */ + 0x7f, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, + 0x0, 0x0, 0x0, 0xff, 0xe0, + /* U+4EA4 "交" */ 0x8, 0x0, 0x83, 0xff, 0x80, 0x1, 0x10, 0x41, 0x14, 0x50, 0x50, 0x4, 0x1, 0x40, 0xc6, 0x60, @@ -331,6 +348,16 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x10, 0x42, 0xff, 0x41, 0x8, 0x21, 0x4, 0x20, 0x80, + /* U+4F4D "位" */ + 0x22, 0x4, 0x21, 0x0, 0x2f, 0xfc, 0x0, 0x90, + 0x92, 0x12, 0x22, 0x44, 0x88, 0x91, 0x4, 0x2f, + 0xf0, + + /* U+4F4E "低" */ + 0x10, 0xc3, 0xe0, 0xa4, 0x14, 0x86, 0x91, 0x5f, + 0xca, 0x41, 0x48, 0x2a, 0xa5, 0x94, 0xa9, 0x90, + 0x90, + /* U+4F5C "作" */ 0x14, 0x2, 0x80, 0x9f, 0x95, 0x6, 0x21, 0x47, 0x88, 0x81, 0x10, 0x23, 0xe4, 0x40, 0x88, 0x11, @@ -356,6 +383,11 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x2, 0x80, 0x88, 0x11, 0x4, 0x11, 0x1, 0x40, 0x10, + /* U+516C "公" */ + 0x11, 0x2, 0x20, 0x44, 0x10, 0x42, 0x48, 0x88, + 0xa2, 0x8, 0x40, 0x11, 0x4, 0x11, 0xff, 0x0, + 0x20, + /* U+5171 "共" */ 0x11, 0x2, 0x20, 0x44, 0x3f, 0xe1, 0x10, 0x22, 0x4, 0x47, 0xff, 0x0, 0x2, 0x20, 0x82, 0x20, @@ -366,6 +398,16 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x3f, 0xf8, 0x20, 0xa, 0x2, 0x20, 0x82, 0x60, 0x30, + /* U+51FA "出" */ + 0x4, 0x8, 0x89, 0x11, 0x22, 0x27, 0xfc, 0x8, + 0x1, 0x4, 0x21, 0x84, 0x30, 0x87, 0xff, 0x80, + 0x10, + + /* U+5206 "分" */ + 0x11, 0x2, 0x20, 0x82, 0x10, 0x44, 0x5, 0x7f, + 0x42, 0x20, 0x44, 0x10, 0x82, 0x10, 0x82, 0x23, + 0x80, + /* U+5236 "制" */ 0x10, 0x2a, 0x5, 0xf4, 0xc8, 0x9f, 0xf2, 0x22, 0x5f, 0x4a, 0xa9, 0x55, 0x2a, 0x85, 0x70, 0x88, @@ -403,6 +445,10 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0xfb, 0xe1, 0x44, 0x28, 0xc5, 0x15, 0x14, 0xa2, 0x88, 0x21, 0x4, 0x51, 0x4a, 0x4a, 0x10, 0x80, + /* U+53D6 "取" */ + 0xfc, 0x9, 0x79, 0x25, 0x3c, 0xa4, 0x94, 0xf2, + 0x92, 0x52, 0x64, 0xf8, 0x81, 0x28, 0x28, 0x80, + /* U+53E3 "口" */ 0xff, 0xc0, 0x60, 0x30, 0x18, 0xc, 0x6, 0x3, 0x1, 0xff, 0xc0, 0x40, @@ -412,6 +458,11 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0xc4, 0x1, 0x0, 0x3f, 0xc0, 0x8, 0x1, 0x0, 0xc0, + /* U+5408 "合" */ + 0x4, 0x1, 0x40, 0x44, 0x10, 0x4c, 0x6, 0x7f, + 0x0, 0x3, 0xfe, 0x40, 0x48, 0x9, 0xff, 0x20, + 0x20, + /* U+542F "启" */ 0x4, 0x0, 0x40, 0xff, 0x90, 0x12, 0x2, 0x7f, 0xc8, 0x1, 0xff, 0x30, 0x2a, 0x5, 0x7f, 0xc8, @@ -422,6 +473,10 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0xc0, 0x3, 0xfe, 0x40, 0x48, 0x9, 0xff, 0x20, 0x20, + /* U+56DE "回" */ + 0xff, 0xe0, 0x18, 0x6, 0x79, 0x92, 0x64, 0x99, + 0xe6, 0x1, 0x80, 0x7f, 0xf8, 0x4, + /* U+5730 "地" */ 0x21, 0x4, 0x20, 0x95, 0x92, 0xdf, 0x72, 0x5a, 0x49, 0x49, 0x2b, 0x25, 0x6, 0x87, 0x10, 0x81, @@ -442,6 +497,11 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x8f, 0xf0, 0x80, 0x3f, 0xca, 0x10, 0x3c, 0x38, 0x70, + /* U+5916 "外" */ + 0x21, 0x4, 0x20, 0x84, 0x1c, 0x84, 0x98, 0x92, + 0xaa, 0x48, 0x89, 0x11, 0x4, 0x21, 0x4, 0x40, + 0x80, + /* U+5B50 "子" */ 0x3f, 0x80, 0x20, 0x8, 0x2, 0x0, 0x41, 0xff, 0xc1, 0x0, 0x20, 0x4, 0x0, 0x80, 0x70, 0x0, @@ -471,16 +531,35 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x63, 0xe9, 0x80, 0x4, 0x8, 0x89, 0x11, 0x3f, 0xe0, + /* U+5DF2 "已" */ + 0xff, 0x80, 0x20, 0xa, 0x2, 0x80, 0xbf, 0xe8, + 0x2, 0x0, 0x80, 0x60, 0x17, 0xfc, + /* U+5E38 "常" */ 0x24, 0x82, 0xa3, 0xff, 0xc0, 0x13, 0xf8, 0x41, 0xf, 0xe0, 0x20, 0x7f, 0xc8, 0x89, 0x13, 0x2, 0x0, + /* U+5E74 "年" */ + 0x20, 0x4, 0x0, 0xff, 0xa1, 0x8, 0x20, 0x7f, + 0x88, 0x81, 0x10, 0xff, 0xe0, 0x40, 0x8, 0x1, + 0x0, + /* U+5E8F "序" */ 0x2, 0xf, 0xfd, 0x0, 0x2f, 0xe4, 0x8, 0x9a, 0x10, 0x83, 0xff, 0x42, 0x28, 0x49, 0x8, 0x43, 0x0, + /* U+5EA6 "度" */ + 0x2, 0xf, 0xfd, 0x22, 0x3f, 0xf4, 0x88, 0x9f, + 0x10, 0x2, 0xfe, 0x48, 0x48, 0x91, 0xc, 0x4e, + 0x70, + + /* U+5EF6 "延" */ + 0x0, 0x7e, 0xf0, 0x42, 0x10, 0x44, 0x48, 0xe9, + 0xc5, 0x20, 0xa4, 0x54, 0x84, 0xfd, 0x40, 0x47, + 0xf0, + /* U+5F02 "异" */ 0x7f, 0xc8, 0x9, 0xff, 0x20, 0x4, 0x2, 0x7f, 0xc4, 0x20, 0x84, 0xff, 0xe2, 0x10, 0x82, 0x20, @@ -510,6 +589,16 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x11, 0x11, 0x74, 0x15, 0x4, 0x93, 0x11, 0x86, 0x0, + /* U+6001 "态" */ + 0x4, 0x0, 0x83, 0xff, 0x85, 0x1, 0x10, 0x49, + 0x30, 0x98, 0x20, 0x52, 0x4a, 0x46, 0x42, 0x87, + 0xc0, + + /* U+603B "总" */ + 0x20, 0x82, 0x21, 0xff, 0x20, 0x24, 0x4, 0x80, + 0x9f, 0xf0, 0x0, 0x4, 0x4a, 0x45, 0x42, 0xc7, + 0xc0, + /* U+606F "息" */ 0x8, 0xf, 0xf9, 0x1, 0x3f, 0xe4, 0x4, 0xff, 0x90, 0x13, 0xfe, 0x4, 0xa, 0x49, 0x42, 0xc7, @@ -525,6 +614,11 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x1, 0x7, 0xff, 0x4, 0x0, 0x80, 0x10, 0xe, 0x0, + /* U+6295 "投" */ + 0x27, 0x84, 0x90, 0x92, 0x7a, 0x42, 0x86, 0x40, + 0xb, 0xf1, 0xa2, 0xe2, 0x84, 0x20, 0x8a, 0x36, + 0x30, + /* U+6296 "抖" */ 0x20, 0x44, 0x48, 0x85, 0x7c, 0x22, 0x24, 0x42, 0x8c, 0x17, 0x3, 0x27, 0xc4, 0x8, 0x81, 0x30, @@ -545,6 +639,11 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0xcd, 0x27, 0x3f, 0x26, 0x25, 0x44, 0xaf, 0xb9, 0x10, + /* U+63A5 "接" */ + 0x22, 0x4, 0x20, 0xbf, 0xfa, 0x22, 0x28, 0x5f, + 0xcc, 0x47, 0x7f, 0x22, 0x44, 0xc8, 0x86, 0x37, + 0x30, + /* U+63A7 "控" */ 0x42, 0x8, 0x21, 0x3f, 0xf4, 0x14, 0x28, 0x88, 0x9a, 0xe, 0x3e, 0x41, 0x8, 0x21, 0x4, 0x67, @@ -588,11 +687,29 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0xa4, 0x94, 0x8a, 0x91, 0x5e, 0xa, 0x41, 0x0, 0xe0, + /* U+663E "显" */ + 0x7f, 0xc8, 0x9, 0xff, 0x20, 0x27, 0xfc, 0x22, + 0x24, 0x4a, 0x8a, 0x31, 0x82, 0x23, 0xff, 0x80, + + /* U+6700 "最" */ + 0x3f, 0x84, 0x10, 0xfe, 0x10, 0x4f, 0xfe, 0x90, + 0x1e, 0xf2, 0x4a, 0x79, 0x49, 0x93, 0xe5, 0x5, + 0x10, + + /* U+6708 "月" */ + 0x3f, 0xc8, 0x12, 0x4, 0xff, 0x20, 0x48, 0x13, + 0xfc, 0x81, 0x40, 0x50, 0x18, 0x1c, + /* U+671F "期" */ 0x48, 0x9, 0x3f, 0xf4, 0xa4, 0x97, 0x9e, 0x92, 0x5e, 0x4a, 0x4f, 0xfd, 0x20, 0x25, 0x24, 0xc3, 0x30, + /* U+672A "未" */ + 0x4, 0x0, 0x81, 0xff, 0x2, 0x0, 0x41, 0xff, + 0xc3, 0x80, 0xa8, 0x24, 0x98, 0x8c, 0x10, 0x2, + 0x0, + /* U+672C "本" */ 0x4, 0x0, 0x83, 0xff, 0x82, 0x0, 0xe0, 0x2a, 0x5, 0x41, 0x24, 0x44, 0x57, 0xf4, 0x10, 0x2, @@ -608,6 +725,11 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x8, 0x21, 0xfc, 0x20, 0x87, 0xf0, 0x0, 0x7f, 0xf0, + /* U+6807 "标" */ + 0x20, 0x4, 0xf8, 0x80, 0x78, 0x2, 0xfe, 0xc2, + 0x1c, 0x45, 0x2a, 0x25, 0x25, 0x24, 0x84, 0x11, + 0x80, + /* U+6821 "校" */ 0x22, 0x4, 0x20, 0xbf, 0xf8, 0x2, 0x28, 0xe8, 0x9a, 0xad, 0x14, 0x22, 0x84, 0x20, 0x8a, 0x16, @@ -623,10 +745,30 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x9d, 0x15, 0x3e, 0x21, 0x5, 0xfc, 0x8a, 0x16, 0x30, + /* U+6B20 "欠" */ + 0x20, 0x4, 0x0, 0xff, 0x20, 0x24, 0x45, 0x9, + 0x1, 0x0, 0x50, 0xa, 0x2, 0x20, 0x82, 0x60, + 0x30, + + /* U+6B21 "次" */ + 0x4, 0x10, 0x81, 0x1f, 0x84, 0x10, 0xa4, 0x24, + 0x0, 0x81, 0x28, 0x45, 0x11, 0x10, 0x41, 0x10, + 0x10, + /* U+6B7B "死" */ 0xff, 0xe4, 0x40, 0x88, 0x1d, 0x14, 0xa5, 0x55, 0x4, 0xc0, 0x90, 0x22, 0x28, 0x46, 0x7, 0x80, + /* U+6BB5 "段" */ + 0x13, 0xcc, 0x49, 0x9, 0x3a, 0x34, 0x0, 0xef, + 0x90, 0x92, 0x92, 0x62, 0x98, 0x21, 0xa, 0x26, + 0x30, + + /* U+6C42 "求" */ + 0x4, 0x80, 0x8b, 0xff, 0x82, 0x4, 0x64, 0x4d, + 0x3, 0x40, 0xa8, 0x24, 0x98, 0x88, 0x10, 0x86, + 0x0, + /* U+6CE2 "波" */ 0x1, 0x10, 0x21, 0x7f, 0x88, 0x91, 0x11, 0x3f, 0x95, 0x10, 0xa2, 0x12, 0x8a, 0x22, 0x4a, 0x16, @@ -642,11 +784,21 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x5a, 0xa9, 0x55, 0x2a, 0xa9, 0x6, 0x50, 0x91, 0x30, + /* U+6D88 "消" */ + 0x1, 0x9, 0x24, 0x95, 0x0, 0x88, 0xfe, 0x90, + 0x43, 0xf8, 0x41, 0x2f, 0xe9, 0x6, 0x20, 0x84, + 0x30, + /* U+6E05 "清" */ 0x2, 0x17, 0xfd, 0x8, 0xf, 0xe0, 0x21, 0x7f, 0xd4, 0x10, 0xfe, 0x10, 0x4b, 0xfa, 0x41, 0x8, 0x60, + /* U+6E29 "温" */ + 0xf, 0x91, 0x11, 0x3e, 0x4, 0x40, 0xf9, 0x0, + 0x17, 0xf0, 0xaa, 0x35, 0x4a, 0xaa, 0x55, 0x1f, + 0xf0, + /* U+70B9 "点" */ 0x4, 0x0, 0xfc, 0x10, 0x2, 0x7, 0xfc, 0x80, 0x90, 0x12, 0x2, 0x7f, 0xc0, 0x1, 0x49, 0x44, @@ -662,10 +814,20 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x51, 0x4b, 0xaa, 0x55, 0x4a, 0x91, 0x65, 0x49, 0x10, + /* U+72B6 "状" */ + 0x21, 0x4, 0x2a, 0x84, 0xb0, 0x82, 0xfe, 0x42, + 0x8, 0xa3, 0x14, 0xa2, 0x84, 0x88, 0x91, 0x14, + 0x10, + /* U+7528 "用" */ 0x7f, 0xd1, 0x14, 0x45, 0xff, 0x44, 0x51, 0x17, 0xfd, 0x11, 0x44, 0x51, 0x18, 0x1c, + /* U+7535 "电" */ + 0x8, 0x1, 0x3, 0xfe, 0x44, 0x48, 0x89, 0xff, + 0x22, 0x24, 0x44, 0xff, 0x91, 0x4, 0x20, 0x83, + 0xf0, + /* U+754C "界" */ 0x7f, 0xc8, 0x89, 0xff, 0x22, 0x27, 0xfc, 0x8, 0x6, 0xc7, 0x7, 0x11, 0x2, 0x20, 0x84, 0x20, @@ -689,6 +851,20 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0xf7, 0xe4, 0x20, 0x9f, 0x22, 0xa7, 0x7d, 0xaa, 0x95, 0xf2, 0xc8, 0x55, 0xe, 0x61, 0x53, 0x80, + /* U+786E "确" */ + 0x2, 0x1e, 0x78, 0x91, 0x10, 0x44, 0x7e, 0xea, + 0x75, 0xfa, 0xa9, 0x57, 0xee, 0xa5, 0x54, 0x84, + 0x30, + + /* U+793A "示" */ + 0x3f, 0x80, 0x0, 0x0, 0x7f, 0xf0, 0x40, 0x8, + 0x9, 0x21, 0x22, 0x44, 0x30, 0x84, 0x30, 0x0, + + /* U+79D2 "秒" */ + 0x11, 0x1c, 0x20, 0x85, 0x12, 0x9f, 0x52, 0x4a, + 0x5a, 0x43, 0x89, 0xa0, 0x44, 0x10, 0x8c, 0x16, + 0x0, + /* U+7A0B "程" */ 0x17, 0xdc, 0x88, 0x91, 0x13, 0xef, 0x0, 0x4f, 0x9c, 0x43, 0x48, 0xa7, 0xc4, 0x20, 0x84, 0x17, @@ -748,6 +924,11 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x4, 0x82, 0x92, 0x50, 0x2a, 0x16, 0x42, 0x87, 0xc0, + /* U+8377 "荷" */ + 0x11, 0x1f, 0xfc, 0x44, 0x17, 0xf2, 0x4, 0x9e, + 0xb2, 0x52, 0x4a, 0x4f, 0x49, 0x9, 0x1, 0x20, + 0xe0, + /* U+884C "行" */ 0x10, 0x4, 0xf9, 0x0, 0x48, 0x2, 0xfe, 0xc1, 0x28, 0x21, 0x4, 0x20, 0x84, 0x10, 0x82, 0x11, @@ -793,31 +974,95 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x90, 0x83, 0xff, 0x42, 0xc, 0xa1, 0x22, 0x8, 0x30, + /* U+8BF7 "请" */ + 0x82, 0xb, 0xfc, 0x8, 0x7, 0xec, 0x20, 0xbf, + 0xd2, 0x12, 0x7e, 0x48, 0x49, 0xf9, 0xa1, 0x24, + 0x60, + + /* U+8D1F "负" */ + 0x20, 0x7, 0xe1, 0x4, 0x41, 0x7, 0xfc, 0x80, + 0x91, 0x12, 0x22, 0x44, 0x41, 0x60, 0xc3, 0x60, + 0x10, + + /* U+8D8A "越" */ + 0x20, 0xa4, 0x13, 0xdf, 0x92, 0x42, 0x4b, 0xeb, + 0x49, 0xb5, 0x25, 0xb1, 0x74, 0x47, 0x80, 0x5f, + 0xf0, + + /* U+8DF3 "跳" */ + 0xf2, 0x92, 0x52, 0x6a, 0xfb, 0x62, 0x28, 0x45, + 0x2d, 0xb5, 0x55, 0xa2, 0x96, 0x57, 0x12, 0x84, + 0x30, + /* U+8F6F "软" */ 0x22, 0x4, 0x43, 0xcf, 0xa2, 0x16, 0x45, 0x52, 0x3c, 0x41, 0x8, 0x32, 0x9c, 0x50, 0x91, 0x14, 0x10, + /* U+8F7D "载" */ + 0x11, 0x4f, 0xa4, 0x44, 0x7f, 0xf2, 0x11, 0xfa, + 0x94, 0x53, 0xea, 0x10, 0x83, 0x97, 0xc5, 0x89, + 0x10, + /* U+8F93 "输" */ 0x21, 0x4, 0x53, 0xd1, 0x25, 0xda, 0x1, 0xfc, 0x4a, 0xa9, 0xf5, 0xea, 0xa5, 0xd4, 0xa8, 0x95, 0x30, + /* U+8FC7 "过" */ + 0x40, 0x44, 0x8, 0x1, 0x7, 0xfe, 0x4, 0x48, + 0x88, 0x91, 0x12, 0x20, 0x44, 0x39, 0x40, 0x47, + 0xf0, + /* U+8FD0 "运" */ 0x40, 0x4, 0xf8, 0x0, 0x0, 0xe, 0xfe, 0x42, 0x8, 0x81, 0x22, 0x2f, 0xe4, 0x5, 0x40, 0x47, 0xf0, + /* U+8FD1 "近" */ + 0x40, 0xc4, 0xe0, 0x10, 0x2, 0xe, 0x7e, 0x49, + 0x9, 0x21, 0x24, 0x24, 0x85, 0x11, 0x40, 0x47, + 0xf0, + + /* U+8FD4 "返" */ + 0x40, 0xe5, 0xe0, 0x20, 0x7, 0xfe, 0x82, 0x54, + 0x4a, 0x51, 0x44, 0x29, 0x46, 0x45, 0x40, 0x47, + 0xf0, + + /* U+9000 "退" */ + 0x4f, 0xc5, 0x8, 0x3f, 0x4, 0x2e, 0xfc, 0x54, + 0x4a, 0x51, 0x54, 0x2c, 0x45, 0x9, 0x40, 0x47, + 0xf0, + /* U+901A "通" */ 0x9f, 0x88, 0x90, 0xc, 0xf, 0xed, 0x24, 0xbf, 0x94, 0x92, 0xfe, 0x52, 0x4a, 0x59, 0x0, 0x5f, 0xf0, + /* U+9053 "道" */ + 0x44, 0x45, 0xfc, 0x8, 0x7, 0xfe, 0x82, 0x5f, + 0xca, 0x9, 0x7f, 0x28, 0x25, 0xfd, 0x40, 0x47, + 0xf0, + /* U+9065 "遥" */ 0x80, 0xeb, 0xe0, 0x28, 0x82, 0xac, 0x7c, 0x92, 0x17, 0xfa, 0x8, 0x49, 0x29, 0xfd, 0x0, 0x5f, 0xf0, + /* U+90E8 "部" */ + 0x10, 0xf, 0xbc, 0x4, 0xa2, 0x92, 0x95, 0xfe, + 0x80, 0x4b, 0xe9, 0x45, 0x28, 0xb9, 0xf4, 0x22, + 0x80, + + /* U+914D "配" */ + 0xfe, 0xe5, 0x7, 0xf8, 0xd5, 0x1a, 0xaf, 0x8d, + 0x20, 0xa7, 0xf4, 0x82, 0xbf, 0xd6, 0x9, 0x80, + + /* U+91CD "重" */ + 0x3, 0xcf, 0x80, 0x10, 0x7f, 0xf4, 0x44, 0xff, + 0x91, 0x13, 0xfe, 0x4, 0xf, 0xf8, 0x10, 0x7f, + 0xf0, + /* U+91CF "量" */ 0x7f, 0xc8, 0x89, 0x9, 0x7f, 0xf4, 0x44, 0xff, 0x91, 0x13, 0xfe, 0x4, 0xf, 0xf8, 0x10, 0x7f, @@ -833,11 +1078,34 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x48, 0x8f, 0xdf, 0x22, 0x25, 0x44, 0xc8, 0x92, 0x70, + /* U+9501 "锁" */ + 0x41, 0xd, 0x26, 0x15, 0x0, 0x8e, 0xfe, 0x90, + 0x52, 0x4f, 0x49, 0x49, 0x28, 0x51, 0x91, 0x2c, + 0x10, + /* U+9519 "错" */ 0x42, 0x48, 0x49, 0xdf, 0xc1, 0x2e, 0xfe, 0x80, 0x11, 0xff, 0xa1, 0x47, 0xea, 0x85, 0x9f, 0xa2, 0x10, + /* U+957F "长" */ + 0x10, 0x2, 0x18, 0x4c, 0xe, 0x1, 0x1, 0xff, + 0xc4, 0x80, 0x90, 0x11, 0x2, 0x90, 0x61, 0x88, + 0x0, + + /* U+95ED "闭" */ + 0x80, 0x13, 0xf0, 0x6, 0x11, 0x84, 0x6f, 0xd8, + 0x46, 0x31, 0x94, 0x69, 0x18, 0xc6, 0x7, + + /* U+95F4 "间" */ + 0x9f, 0xd0, 0x10, 0x6, 0xfd, 0xa1, 0x68, 0x5b, + 0xf6, 0x85, 0xa1, 0x6f, 0xd8, 0x6, 0x7, + + /* U+95F8 "闸" */ + 0x9f, 0xe8, 0x4, 0x0, 0xdf, 0xda, 0x4b, 0x7f, + 0x69, 0x2d, 0xfd, 0x84, 0x30, 0x86, 0x10, 0xc0, + 0x30, + /* U+9632 "防" */ 0x2, 0x1e, 0x22, 0x7f, 0xc9, 0xa, 0x21, 0x47, 0xe4, 0x8c, 0x91, 0x92, 0x3c, 0x86, 0x10, 0xc4, @@ -848,6 +1116,16 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x2b, 0xfd, 0x8, 0xa5, 0x59, 0x26, 0x44, 0xc1, 0x80, + /* U+969C "障" */ + 0x1, 0x1e, 0xfa, 0x4a, 0x4f, 0xfa, 0x45, 0x4f, + 0xa5, 0x14, 0xbe, 0x91, 0x1d, 0xfe, 0x4, 0x40, + 0x80, + + /* U+96F6 "零" */ + 0x7f, 0xc0, 0x83, 0xff, 0xda, 0xd0, 0x40, 0xeb, + 0x82, 0x81, 0xac, 0xdf, 0x60, 0x40, 0x70, 0x1, + 0x80, + /* U+9762 "面" */ 0xff, 0xe0, 0x80, 0x20, 0x3f, 0xf4, 0x92, 0x9e, 0x52, 0x4a, 0x79, 0x49, 0x2f, 0xfd, 0x0, 0x80, @@ -857,6 +1135,11 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0x91, 0x12, 0x22, 0x44, 0x41, 0x60, 0xc3, 0x60, 0x10, + /* U+9891 "频" */ + 0x13, 0xeb, 0x91, 0x44, 0x29, 0xff, 0xe2, 0x25, + 0x54, 0xaa, 0xb5, 0x8a, 0xa2, 0x10, 0x85, 0x61, + 0x10, + /* U+9988 "馈" */ 0x41, 0x9, 0xfd, 0xa4, 0xd7, 0xf0, 0x10, 0xbf, 0xd0, 0x2, 0x7f, 0x49, 0x29, 0x25, 0x8b, 0x26, @@ -879,10 +1162,7 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = { 0xf0, 0xf0, /* U+25B6 "▶"(来源:Segoe UI Symbol;宋体无此字形) */ - 0x80, 0xe0, 0xf0, 0xfc, 0xff, 0xfe, 0xf8, 0xf0, 0xc0, 0x00, - - /* U+FF0C ','(来源:宋体迷你字体并入;lv_font_conv 丢低码位符号) */ - 0xf6 + 0x80, 0xe0, 0xf0, 0xfc, 0xff, 0xfe, 0xf8, 0xf0, 0xc0, 0x00 }; @@ -987,126 +1267,185 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { {.bitmap_index = 476, .adv_w = 96, .box_w = 1, .box_h = 13, .ofs_x = 3, .ofs_y = -2}, {.bitmap_index = 478, .adv_w = 96, .box_w = 3, .box_h = 12, .ofs_x = 1, .ofs_y = -1}, {.bitmap_index = 483, .adv_w = 96, .box_w = 6, .box_h = 3, .ofs_x = 0, .ofs_y = 8}, - {.bitmap_index = 486, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 502, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 519, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 536, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 553, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 570, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 587, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 604, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 621, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 638, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 655, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 672, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 689, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 706, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 723, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 740, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 757, .adv_w = 192, .box_w = 10, .box_h = 11, .ofs_x = 1, .ofs_y = -2}, - {.bitmap_index = 771, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 787, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 804, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 820, .adv_w = 192, .box_w = 9, .box_h = 10, .ofs_x = 1, .ofs_y = -1}, - {.bitmap_index = 832, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 849, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 866, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 883, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 900, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 917, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 934, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 951, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 967, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 984, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1001, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1018, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1035, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1052, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1069, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1086, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1103, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1120, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1137, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1154, .adv_w = 192, .box_w = 9, .box_h = 12, .ofs_x = 1, .ofs_y = -2}, - {.bitmap_index = 1168, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1185, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1202, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1219, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1236, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1253, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1270, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1287, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1304, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1321, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1338, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1355, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1372, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1389, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1406, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1422, .adv_w = 192, .box_w = 9, .box_h = 11, .ofs_x = 1, .ofs_y = -2}, - {.bitmap_index = 1435, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1452, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1469, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1486, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1503, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1520, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1537, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1554, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1571, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1587, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1604, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1621, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1638, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1655, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1672, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1689, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1706, .adv_w = 192, .box_w = 10, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1720, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1737, .adv_w = 192, .box_w = 10, .box_h = 12, .ofs_x = 1, .ofs_y = -2}, - {.bitmap_index = 1752, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1769, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1786, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1802, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1819, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1836, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1853, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1870, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1887, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1904, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1921, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1938, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1955, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 1972, .adv_w = 192, .box_w = 9, .box_h = 12, .ofs_x = 1, .ofs_y = -2}, - {.bitmap_index = 1986, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2003, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2020, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2037, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2054, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2071, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2088, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2105, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2122, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2139, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2156, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2173, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2190, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2207, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2224, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2241, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2258, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2275, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2292, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2309, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2326, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2343, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2359, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2376, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2393, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2410, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, - {.bitmap_index = 2427, .adv_w = 192, .box_w = 2, .box_h = 4, .ofs_x = 2, .ofs_y = 0}, - {.bitmap_index = 2428, .adv_w = 192, .box_w = 2, .box_h = 6, .ofs_x = 2, .ofs_y = 0}, - {.bitmap_index = 2430, .adv_w = 165, .box_w = 8, .box_h = 10, .ofs_x = 1, .ofs_y = -1} /* U+25B6 */, - {.bitmap_index = 2440, .adv_w = 192, .box_w = 2, .box_h = 4, .ofs_x = 2, .ofs_y = 0} /* U+FF0C */ + {.bitmap_index = 486, .adv_w = 192, .box_w = 3, .box_h = 9, .ofs_x = 4, .ofs_y = 0}, + {.bitmap_index = 490, .adv_w = 192, .box_w = 7, .box_h = 9, .ofs_x = 1, .ofs_y = 0}, + {.bitmap_index = 498, .adv_w = 192, .box_w = 11, .box_h = 9, .ofs_x = 0, .ofs_y = 0}, + {.bitmap_index = 511, .adv_w = 192, .box_w = 11, .box_h = 1, .ofs_x = 0, .ofs_y = 3}, + {.bitmap_index = 513, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 529, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 546, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 563, .adv_w = 192, .box_w = 11, .box_h = 9, .ofs_x = 0, .ofs_y = -1}, + {.bitmap_index = 576, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 593, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 610, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 627, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 644, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 661, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 678, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 695, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 712, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 729, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 746, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 763, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 780, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 797, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 814, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 831, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 848, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 865, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 882, .adv_w = 192, .box_w = 10, .box_h = 11, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 896, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 912, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 929, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 945, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 961, .adv_w = 192, .box_w = 9, .box_h = 10, .ofs_x = 1, .ofs_y = -1}, + {.bitmap_index = 973, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 990, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1007, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1024, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1041, .adv_w = 192, .box_w = 10, .box_h = 11, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 1055, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1072, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1089, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1106, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1123, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1140, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1156, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1173, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1190, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1207, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1224, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1241, .adv_w = 192, .box_w = 10, .box_h = 11, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 1255, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1272, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1289, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1306, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1323, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1340, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1357, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1374, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1391, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1408, .adv_w = 192, .box_w = 9, .box_h = 12, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 1422, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1439, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1456, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1473, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1490, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1507, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1524, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1541, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1558, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1575, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1592, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1609, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1626, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1643, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1660, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1677, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1694, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1711, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1728, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1744, .adv_w = 192, .box_w = 9, .box_h = 11, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 1757, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1774, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1790, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1807, .adv_w = 192, .box_w = 10, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1821, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1838, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1855, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1872, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1889, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1906, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1923, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1940, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1957, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1974, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 1991, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2008, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2024, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2041, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2058, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2075, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2092, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2109, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2126, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2143, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2160, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2177, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2194, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2211, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2228, .adv_w = 192, .box_w = 10, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2242, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2259, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2276, .adv_w = 192, .box_w = 10, .box_h = 12, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 2291, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2308, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2325, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2341, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2358, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2374, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2391, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2408, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2425, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2442, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2459, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2476, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2493, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2510, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2527, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2544, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2561, .adv_w = 192, .box_w = 9, .box_h = 12, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 2575, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2592, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2609, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2626, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2643, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2660, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2677, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2694, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2711, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2728, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2745, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2762, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2779, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2796, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2813, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2830, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2847, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2864, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2881, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2898, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2915, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2932, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2949, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2966, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 2983, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3000, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3017, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3034, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3050, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3067, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3084, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3101, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3118, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3135, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3152, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3169, .adv_w = 192, .box_w = 10, .box_h = 12, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 3184, .adv_w = 192, .box_w = 10, .box_h = 12, .ofs_x = 1, .ofs_y = -2}, + {.bitmap_index = 3199, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3216, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3233, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3250, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3267, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3284, .adv_w = 192, .box_w = 11, .box_h = 11, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3300, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3317, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3334, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3351, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3368, .adv_w = 192, .box_w = 11, .box_h = 12, .ofs_x = 0, .ofs_y = -2}, + {.bitmap_index = 3385, .adv_w = 192, .box_w = 2, .box_h = 4, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 3386, .adv_w = 192, .box_w = 2, .box_h = 6, .ofs_x = 2, .ofs_y = 0}, + {.bitmap_index = 3388, .adv_w = 165, .box_w = 8, .box_h = 10, .ofs_x = 1, .ofs_y = -1} /* U+25B6 */ }; /*--------------------- @@ -1114,21 +1453,29 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = { *--------------------*/ static const uint16_t unicode_list_1[] = { - 0x0, 0x32, 0x82, 0x9b, 0xed, 0x153, 0x1d4, 0x1d8, - 0x233, 0x35c, 0x368, 0x36a, 0x42d, 0x444, 0x49f, 0x50d, - 0x531, 0x582, 0x5b9, 0x5c3, 0x5da, 0x5ee, 0x626, 0x641, - 0x927, 0x937, 0x982, 0xb04, 0xd47, 0xd4e, 0xd4f, 0xd91, - 0xd95, 0xdbd, 0x102f, 0x1086, 0x10f9, 0x1106, 0x1131, 0x1149, - 0x114a, 0x114c, 0x1266, 0x142e, 0x1442, 0x148d, 0x149b, 0x149c, - 0x1565, 0x159e, 0x15a0, 0x16c4, 0x173c, 0x1767, 0x176b, 0x17d7, - 0x17dc, 0x17ed, 0x1916, 0x1923, 0x1976, 0x19dc, 0x1a18, 0x1ab7, - 0x1c18, 0x1d72, 0x1ed9, 0x1f38, 0x1f42, 0x1ffc, 0x22b0, 0x243e, - 0x243f, 0x271f, 0x2743, 0x28eb, 0x2902, 0x29f8, 0x2a63, 0x2c02, - 0x2ce6, 0x2d23, 0x2e72, 0x2ef2, 0x30b6, 0x30bf, 0x30eb, 0x3148, - 0x3165, 0x33e1, 0x34a6, 0x3a43, 0x3abc, 0x3d5d, 0x3d9b, 0x3da6, - 0x3da7, 0x3db5, 0x3dd9, 0x3de6, 0x4166, 0x418a, 0x41c7, 0x4211, - 0x425c, 0x43c6, 0x4696, 0x469c, 0x4710, 0x4829, 0x485b, 0x4959, - 0x4a6c, 0x4b7f, 0x4c83, 0x50cf, 0xb103, 0xb111 + 0x0, 0x1, 0x2, 0x2ca0, 0x2ca9, 0x2cdb, 0x2d2b, 0x2d2c, + 0x2d44, 0x2d96, 0x2ded, 0x2dee, 0x2dfc, 0x2e7d, 0x2e81, 0x2edc, + 0x3005, 0x300c, 0x3011, 0x3013, 0x309a, 0x30a6, 0x30d6, 0x30ed, + 0x3148, 0x31b6, 0x31da, 0x322b, 0x3262, 0x326c, 0x3276, 0x3283, + 0x3297, 0x32a8, 0x32cf, 0x32ea, 0x357e, 0x35d0, 0x35e0, 0x362b, + 0x37ad, 0x37b6, 0x39f0, 0x39f7, 0x39f8, 0x3a3a, 0x3a3e, 0x3a66, + 0x3c92, 0x3cd8, 0x3d14, 0x3d2f, 0x3d46, 0x3d96, 0x3da2, 0x3daf, + 0x3dda, 0x3df2, 0x3df3, 0x3df5, 0x3ea1, 0x3edb, 0x3f0f, 0x40d7, + 0x40eb, 0x4135, 0x4136, 0x4144, 0x4145, 0x420e, 0x4245, 0x4247, + 0x4249, 0x436d, 0x43e5, 0x4410, 0x4414, 0x4480, 0x4485, 0x4496, + 0x44de, 0x45a0, 0x45a8, 0x45bf, 0x45ca, 0x45cc, 0x461f, 0x4685, + 0x46a7, 0x46c1, 0x4760, 0x48c1, 0x49c0, 0x49c1, 0x4a1b, 0x4a55, + 0x4ae2, 0x4b82, 0x4be1, 0x4beb, 0x4c28, 0x4ca5, 0x4cc9, 0x4f59, + 0x50e7, 0x50e8, 0x5156, 0x53c8, 0x53d5, 0x53ec, 0x5594, 0x55ab, + 0x56a1, 0x570c, 0x570e, 0x57da, 0x5872, 0x58ab, 0x598f, 0x59cc, + 0x5b1b, 0x5b9b, 0x5d5f, 0x5d68, 0x5d94, 0x5df1, 0x5e0e, 0x608a, + 0x614f, 0x6217, 0x66ec, 0x6765, 0x6a06, 0x6a44, 0x6a4f, 0x6a50, + 0x6a5e, 0x6a82, 0x6a8f, 0x6a97, 0x6bbf, 0x6c2a, 0x6c93, 0x6e0f, + 0x6e1d, 0x6e33, 0x6e67, 0x6e70, 0x6e71, 0x6e74, 0x6ea0, 0x6eba, + 0x6ef3, 0x6f05, 0x6f88, 0x6fed, 0x706d, 0x706f, 0x733f, 0x7345, + 0x73a1, 0x73b9, 0x741f, 0x748d, 0x7494, 0x7498, 0x74d2, 0x7504, + 0x753c, 0x7596, 0x7602, 0x7715, 0x7731, 0x7828, 0x792c, 0x7d78, + 0xddac, 0xddba }; /*Collect the unicode lists and glyph_id offsets*/ @@ -1139,16 +1486,12 @@ static const lv_font_fmt_txt_cmap_t cmaps[] = .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY }, { - .range_start = 19977, .range_length = 45330, .glyph_id_start = 96, - .unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 118, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY - }, - { - .range_start = 9654, .range_length = 1, .glyph_id_start = 214, + .range_start = 9654, .range_length = 1, .glyph_id_start = 274, .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY }, { - .range_start = 65292, .range_length = 1, .glyph_id_start = 215, - .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY + .range_start = 8544, .range_length = 56763, .glyph_id_start = 96, + .unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 178, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY } }; @@ -1165,7 +1508,7 @@ static const lv_font_fmt_txt_dsc_t font_dsc = { .cmaps = cmaps, .kern_dsc = NULL, .kern_scale = 0, - .cmap_num = 4, + .cmap_num = 3, .bpp = 1, .kern_classes = 0, .bitmap_format = 0, diff --git a/tools/font_gen/make_font.py b/tools/font_gen/make_font.py index 80be186e..e3367817 100644 --- a/tools/font_gen/make_font.py +++ b/tools/font_gen/make_font.py @@ -80,14 +80,95 @@ ARROW_BITMAP = [0x80, 0xe0, 0xf0, 0xfc, 0xff, 0xfe, 0xf8, 0xf0, 0xc0, 0x0] ARROW_ADV_W, ARROW_BOX_W, ARROW_BOX_H, ARROW_OFS_X, ARROW_OFS_Y = 165, 8, 10, 1, -1 +def _parse_cmap_entries(src): + """解析 cmaps[] 为 [(range_start, range_length, glyph_id_start, + unicode_list名或None, glyph_id_ofs_list名或None, list_length, type名)], + 以及所有 static const uint8/16 数组表。""" + arrays = {} + for mm in re.finditer(r'static const (uint8_t|uint16_t) (\w+)\[\] = \{(.*?)\};', src, re.S): + arrays[mm.group(2)] = [int(x, 16) for x in re.findall(r'0x[0-9a-fA-F]+', mm.group(3) if mm.group(1) == 'uint16_t' else mm.group(3))] + cm = re.search(r'cmaps\[\]\s*=\s*\{', src) + if not cm: + return [], arrays, None, -1 + end_cm = src.find('\n};', cm.end()) + entries = [] + for mm in re.finditer(r'\{\s*\.range_start\s*=\s*(\d+),\s*\.range_length\s*=\s*(\d+),\s*\.glyph_id_start\s*=\s*(\d+),\s*\.unicode_list\s*=\s*([^,]+),\s*\.glyph_id_ofs_list\s*=\s*([^,]+),\s*\.list_length\s*=\s*(\d+),\s*\.type\s*=\s*(\w+)', src[cm.end():end_cm]): + ul = mm.group(4).strip() + ol = mm.group(5).strip() + entries.append((int(mm.group(1)), int(mm.group(2)), int(mm.group(3)), + None if ul == 'NULL' else ul, + None if ol == 'NULL' else ol, + int(mm.group(6)), mm.group(7))) + return entries, arrays, cm, end_cm + + +def _resolve_in_entry(e, arrays, cp): + rs, rl, gs, ul, ol, ll, typ = e + rcp = cp - rs + if typ.endswith('FORMAT0_TINY'): + return gs + rcp + if typ.endswith('FORMAT0_FULL'): + ofs = arrays.get(ol, []) + if rcp >= len(ofs): + return 0 + v = ofs[rcp] + if v == 0 and rcp != 0: + return 0 + return gs + v + if typ.endswith('SPARSE_TINY'): + lst = arrays.get(ul, []) + try: + i = lst.index(rcp) + except ValueError: + return 0 + return gs + i + if typ.endswith('SPARSE_FULL'): + lst = arrays.get(ul, []) + try: + i = lst.index(rcp) + except ValueError: + return 0 + ofs = arrays.get(ol, []) + return gs + ofs[i] + return 0 + + +def _cmap_lookup_gid(src, cp): + """复刻 LVGL get_glyph_dsc_id:线性扫描,第一个包含码位的 range 决定 + 结果(找不到也直接返回 0,不会继续看后面的 range)。""" + entries, arrays, cm, _end = _parse_cmap_entries(src) + for e in entries: + rs, rl = e[0], e[1] + if rs <= cp < rs + rl: + return _resolve_in_entry(e, arrays, cp) + return 0 + + +def _insert_cmap_entry(src, cp, entry_text): + """把单码位 cmap 条目插到「第一个包含该码位的既有 range」之前; + 无包含者则追加到末尾。(LVGL 线性首命中语义,详见 _cmap_lookup_gid)""" + entries, arrays, cm, end_cm = _parse_cmap_entries(src) + block = src[cm.end():end_cm] + pos = None + for mm in re.finditer(r'\{\s*\.range_start\s*=\s*(\d+),\s*\.range_length\s*=\s*(\d+)', block): + rs, rl = int(mm.group(1)), int(mm.group(2)) + if rs <= cp < rs + rl: + pos = mm.start() + break + if pos is None: + return src[:end_cm] + ',\n' + entry_text + src[end_cm:] + blk_ins = cm.end() + pos + return src[:blk_ins] + entry_text + ',\n ' + src[blk_ins:] + + def merge_arrow_glyph(font_path): """若字体缺 U+25B6(▶),把预提取的箭头字形合并进去(位图 + glyph_dsc + cmap)。""" import re raw = open(font_path, 'rb').read() has_bom = raw.startswith(b'\xef\xbb\xbf') src = raw.decode('utf-8-sig') - if re.search(r'\.range_start\s*=\s*9654\s*,', src): - print('arrow U+25B6 已存在,跳过合并') + if _cmap_lookup_gid(src, ARROW_CP_DEC) != 0: + print('arrow U+25B6 已可经既有 cmap 解析,跳过合并') return # 当前位图总字节数(新字形 bitmap_index 的取值) bm = re.search(r'glyph_bitmap\[\]\s*=\s*\{', src) @@ -106,12 +187,10 @@ def merge_arrow_glyph(font_path): total, ARROW_ADV_W, ARROW_BOX_W, ARROW_BOX_H, ARROW_OFS_X, ARROW_OFS_Y) src = src[:end_gd] + entry + src[end_gd:] # 3) 追加 cmap(单码位映射) - cm = re.search(r'cmaps\[\]\s*=\s*\{', src) - end_cm = src.find('\n};', cm.end()) - cmap = ',\n {\n .range_start = %d, .range_length = 1, .glyph_id_start = %d,\n' \ - ' .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY\n }' % ( + cmap_entry = '{\n .range_start = %d, .range_length = 1, .glyph_id_start = %d,\n' \ + ' .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, .type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY\n }' % ( ARROW_CP_DEC, glyph_count) - src = src[:end_cm] + cmap + src[end_cm:] + src = _insert_cmap_entry(src, ARROW_CP_DEC, cmap_entry) # 4) cmap_num +1 src = re.sub(r'\.cmap_num = (\d+),', lambda m: '.cmap_num = %d,' % (int(m.group(1)) + 1), src, count=1) @@ -321,8 +400,8 @@ def merge_extra_symbols(font_path, size, bpp): raw = open(font_path, 'rb').read() has_bom = raw.startswith(b'\xef\xbb\xbf') src = raw.decode('utf-8-sig') - if re.search(r'\.range_start\s*=\s*%d\s*,' % cp, src): - print('U+%04X %r 已存在,跳过合并' % (cp, ch)) + if _cmap_lookup_gid(src, cp) != 0: + print('U+%04X %r 已可经既有 cmap 解析,跳过合并' % (cp, ch)) continue # 1) 单独生成仅含该符号的迷你字体(真实宋体位图/度量) @@ -376,13 +455,10 @@ def merge_extra_symbols(font_path, size, bpp): main_bytes + bmp_ofs, adv, bw, bh, ox, oy, cp) src = src[:end_main_gd] + entry + src[end_main_gd:] - cm = re.search(r'cmaps\[\]\s*=\s*\{', src) - end_main_cm = src.find('\n};', cm.end()) - cmap = ',\n {\n .range_start = %d, .range_length = %d, ' \ - '.glyph_id_start = %d,\n' \ - ' .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, ' \ - '.type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY\n }' % (sym_cp, sym_len, glyph_count) - src = src[:end_main_cm] + cmap + src[end_main_cm:] + cmap_entry = '{\n .range_start = %d, .range_length = %d, .glyph_id_start = %d,\n' \ + ' .unicode_list = NULL, .glyph_id_ofs_list = NULL, .list_length = 0, ' \ + '.type = LV_FONT_FMT_TXT_CMAP_FORMAT0_TINY\n }' % (sym_cp, sym_len, glyph_count) + src = _insert_cmap_entry(src, sym_cp, cmap_entry) src = re.sub(r'\.cmap_num = (\d+),', lambda m: '.cmap_num = %d,' % (int(m.group(1)) + 1), src, count=1) @@ -422,7 +498,13 @@ def verify_coverage(font_path): return False chars = sorted(set(open(CHARS_FILE, encoding='utf-8').read().strip())) - missing = [c for c in chars if not covered(ord(c))] + # 判定必须复刻 LVGL 的「首个包含即返回」语义:宽稀疏 range 会把后面的 + # 单码位补回条目吞掉(2026-10-25 Ⅰ 段扩字实测:旧 covered() 判据下 + # coverage 全绿,实际 ▶ 上屏全是方框)。_cmap_lookup_gid 不可用时退回 covered。 + try: + missing = [c for c in chars if _cmap_lookup_gid(src, ord(c)) == 0] + except NameError: + missing = [c for c in chars if not covered(ord(c))] if missing: sys.exit('ERROR: 字体缺字 %d 个(UI 将显示空白): %s' % (len(missing), ' '.join('U+%04X' % ord(c) for c in missing))) diff --git a/ui_cn_chars.txt b/ui_cn_chars.txt index a47be134..86655786 100644 --- a/ui_cn_chars.txt +++ b/ui_cn_chars.txt @@ -1 +1 @@ -▶三主事交件作保信值入共关制前动化区压参双口号启告地址型复子字存定实密常序异式强归当录息户手抖护报据控掩操故数整无日时期本板查校检模死波流测清点片版用界直看码硬程端第类系线终维网置自芯行装警认讯记设询误软输运通遥量钟钥错防除面页馈验默,: +ⅠⅡⅢ▶一三主事二交件位低作保信值入公共关出分制前动化区压参双取口号合启告回地址型复外子字存定实密已常年序度延异式强归当录态总息户手投抖护报据接控掩操故数整无日时显最月期未本板查标校检模欠次死段求波流测消清温点片版状用电界直看码硬确示秒程端第类系线终维网置自芯荷行装警认讯记设询误请负越跳软载输过运近返退通道遥部配重量钟钥锁错长闭间闸防除障零面页频馈验默,: