ESP32_ChinaDieselHeater_Con.../Arduino/BTCDieselHeater/Tahoma8.c

785 lines
20 KiB
C
Raw Normal View History

2018-12-02 06:31:26 +00:00
//
// Font data for Tahoma 8pt
//
//
// Generated by The Dot Factory:
// http://www.eran.io/the-dot-factory-an-lcd-font-and-image-generator/
//
/////////////////////////////////////////////////////////////////////////////////////////////////////
//
// Dot Factory Settings
//
// Flip/Rotate Padding Removal Line Wrap Descriptors
// [X] Flip X Height(Y): None (O) At column [X] Generate descriptor array
// [ ] Flip Y Width(X): Tightest ( ) At bitmap Char Width: In Bits
// 90deg Char Height: In Bits
// Font Height: In Bits
// Comments Byte [ ] Multiple descriptor arrays
// [X] Variable Name Bit layout: RowMajor
// [X] BMP visualise [#] Order: MSBfirst Create new when exceeds [80]
// [X] Char descriptor Format: Hex
// Style: Cpp Leading: 0x Image width: In Bits
// Image height: In Bits
// Variable name format
// Bitmaps: const uint8_t PROGMEM {0}Bitmaps Space char generation
// Char Info: const FONT_CHAR_INFO PROGMEM {0}Descriptors [ ] Generate space bitmap
// Font Info: const FONT_INFO {0}FontInfo [2] pixels for space char
// Width: const uint8_t {0}Width
// Height: const uint8_t {0}Height
//
/////////////////////////////////////////////////////////////////////////////////////////////////////
#include "Tahoma8.h"
// Character bitmaps for Tahoma 8pt
const uint8_t PROGMEM tahoma_8ptBitmaps [] =
{
// @0 ' ' (2 pixels wide)
0x00, 0x00, //
0x00, 0x00, //
// @4 '!' (1 pixels wide)
0x1F, 0xA0, // ###### #
// @6 '"' (3 pixels wide)
0x38, 0x00, // ###
0x00, 0x00, //
0x38, 0x00, // ###
// @12 '#' (7 pixels wide)
0x00, 0x80, // #
0x04, 0xE0, // # ###
0x07, 0x80, // ####
0x1C, 0xE0, // ### ###
0x07, 0x80, // ####
0x1C, 0x80, // ### #
0x04, 0x00, // #
// @26 '$' (5 pixels wide)
0x06, 0x20, // ## #
0x09, 0x20, // # # #
0x3F, 0xF8, // ###########
0x09, 0x20, // # # #
0x08, 0xC0, // # ##
// @36 '%' (10 pixels wide)
0x0C, 0x00, // ##
0x12, 0x00, // # #
0x12, 0x00, // # #
0x0C, 0x60, // ## ##
0x01, 0x80, // ##
0x06, 0x00, // ##
0x18, 0xC0, // ## ##
0x01, 0x20, // # #
0x01, 0x20, // # #
0x00, 0xC0, // ##
// @56 '&' (7 pixels wide)
0x0D, 0xC0, // ## ###
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x0D, 0x20, // ## # #
0x00, 0xC0, // ##
0x03, 0x40, // ## #
0x00, 0x20, // #
// @70 ''' (1 pixels wide)
0x38, 0x00, // ###
// @72 '(' (3 pixels wide)
0x07, 0xC0, // #####
0x18, 0x30, // ## ##
0x20, 0x08, // # #
// @78 ')' (3 pixels wide)
0x20, 0x08, // # #
0x18, 0x30, // ## ##
0x07, 0xC0, // #####
// @84 '*' (5 pixels wide)
0x14, 0x00, // # #
0x08, 0x00, // #
0x3E, 0x00, // #####
0x08, 0x00, // #
0x14, 0x00, // # #
// @94 '+' (7 pixels wide)
0x01, 0x00, // #
0x01, 0x00, // #
0x01, 0x00, // #
0x0F, 0xE0, // #######
0x01, 0x00, // #
0x01, 0x00, // #
0x01, 0x00, // #
// @108 ',' (2 pixels wide)
0x00, 0x08, // #
0x00, 0x70, // ###
// @112 '-' (3 pixels wide)
0x01, 0x00, // #
0x01, 0x00, // #
0x01, 0x00, // #
// @118 '.' (1 pixels wide)
0x00, 0x60, // ##
// @120 '/' (3 pixels wide)
0x00, 0x38, // ###
0x07, 0xC0, // #####
0x38, 0x00, // ###
// @126 '0' (5 pixels wide)
0x0F, 0xC0, // ######
0x10, 0x20, // # #
0x10, 0x20, // # #
0x10, 0x20, // # #
0x0F, 0xC0, // ######
// @136 '1' (3 pixels wide)
0x08, 0x20, // # #
0x1F, 0xE0, // ########
0x00, 0x20, // #
// @142 '2' (5 pixels wide)
0x08, 0x60, // # ##
0x10, 0xA0, // # # #
0x11, 0x20, // # # #
0x12, 0x20, // # # #
0x0C, 0x20, // ## #
// @152 '3' (5 pixels wide)
0x08, 0x40, // # #
0x10, 0x20, // # #
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x0D, 0xC0, // ## ###
// @162 '4' (5 pixels wide)
0x03, 0x00, // ##
0x05, 0x00, // # #
0x09, 0x00, // # #
0x1F, 0xE0, // ########
0x01, 0x00, // #
// @172 '5' (5 pixels wide)
0x1E, 0x40, // #### #
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x11, 0xC0, // # ###
// @182 '6' (5 pixels wide)
0x07, 0xC0, // #####
0x0A, 0x20, // # # #
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x01, 0xC0, // ###
// @192 '7' (5 pixels wide)
0x10, 0x00, // #
0x10, 0x60, // # ##
0x11, 0x80, // # ##
0x16, 0x00, // # ##
0x18, 0x00, // ##
// @202 '8' (5 pixels wide)
0x0D, 0xC0, // ## ###
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x0D, 0xC0, // ## ###
// @212 '9' (5 pixels wide)
0x0E, 0x00, // ###
0x11, 0x20, // # # #
0x11, 0x20, // # # #
0x11, 0x40, // # # #
0x0F, 0x80, // #####
// @222 ':' (1 pixels wide)
0x06, 0x60, // ## ##
// @224 ';' (2 pixels wide)
0x00, 0x08, // #
0x06, 0x70, // ## ###
// @228 '<' (6 pixels wide)
0x01, 0x00, // #
0x02, 0x80, // # #
0x02, 0x80, // # #
0x04, 0x40, // # #
0x04, 0x40, // # #
0x08, 0x20, // # #
// @240 '=' (7 pixels wide)
0x02, 0x80, // # #
0x02, 0x80, // # #
0x02, 0x80, // # #
0x02, 0x80, // # #
0x02, 0x80, // # #
0x02, 0x80, // # #
0x02, 0x80, // # #
// @254 '>' (6 pixels wide)
0x08, 0x20, // # #
0x04, 0x40, // # #
0x04, 0x40, // # #
0x02, 0x80, // # #
0x02, 0x80, // # #
0x01, 0x00, // #
// @266 '?' (4 pixels wide)
0x10, 0x00, // #
0x11, 0xA0, // # ## #
0x12, 0x00, // # #
0x0C, 0x00, // ##
// @274 '@' (9 pixels wide)
0x07, 0xC0, // #####
0x08, 0x20, // # #
0x13, 0x90, // # ### #
0x14, 0x50, // # # # #
0x14, 0x50, // # # # #
0x17, 0xD0, // # ##### #
0x10, 0x40, // # #
0x08, 0x40, // # #
0x07, 0x80, // ####
// @292 'A' (6 pixels wide)
0x00, 0xE0, // ###
0x07, 0x80, // ####
0x18, 0x80, // ## #
0x18, 0x80, // ## #
0x07, 0x80, // ####
0x00, 0xE0, // ###
// @304 'B' (5 pixels wide)
0x1F, 0xE0, // ########
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x0D, 0xC0, // ## ###
// @314 'C' (6 pixels wide)
0x07, 0x80, // ####
0x08, 0x40, // # #
0x10, 0x20, // # #
0x10, 0x20, // # #
0x10, 0x20, // # #
0x10, 0x20, // # #
// @326 'D' (6 pixels wide)
0x1F, 0xE0, // ########
0x10, 0x20, // # #
0x10, 0x20, // # #
0x10, 0x20, // # #
0x08, 0x40, // # #
0x07, 0x80, // ####
// @338 'E' (5 pixels wide)
0x1F, 0xE0, // ########
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x10, 0x20, // # #
// @348 'F' (5 pixels wide)
0x1F, 0xE0, // ########
0x12, 0x00, // # #
0x12, 0x00, // # #
0x12, 0x00, // # #
0x12, 0x00, // # #
// @358 'G' (6 pixels wide)
0x07, 0x80, // ####
0x08, 0x40, // # #
0x10, 0x20, // # #
0x11, 0x20, // # # #
0x11, 0x20, // # # #
0x11, 0xE0, // # ####
// @370 'H' (6 pixels wide)
0x1F, 0xE0, // ########
0x02, 0x00, // #
0x02, 0x00, // #
0x02, 0x00, // #
0x02, 0x00, // #
0x1F, 0xE0, // ########
// @382 'I' (3 pixels wide)
0x10, 0x20, // # #
0x1F, 0xE0, // ########
0x10, 0x20, // # #
// @388 'J' (4 pixels wide)
0x00, 0x20, // #
0x10, 0x20, // # #
0x10, 0x20, // # #
0x1F, 0xC0, // #######
// @396 'K' (5 pixels wide)
0x1F, 0xE0, // ########
0x03, 0x00, // ##
0x04, 0x80, // # #
0x08, 0x40, // # #
0x10, 0x20, // # #
// @406 'L' (4 pixels wide)
0x1F, 0xE0, // ########
0x00, 0x20, // #
0x00, 0x20, // #
0x00, 0x20, // #
// @414 'M' (7 pixels wide)
0x1F, 0xE0, // ########
0x18, 0x00, // ##
0x06, 0x00, // ##
0x01, 0x80, // ##
0x06, 0x00, // ##
0x18, 0x00, // ##
0x1F, 0xE0, // ########
// @428 'N' (6 pixels wide)
0x1F, 0xE0, // ########
0x18, 0x00, // ##
0x06, 0x00, // ##
0x01, 0x80, // ##
0x00, 0x60, // ##
0x1F, 0xE0, // ########
// @440 'O' (7 pixels wide)
0x07, 0x80, // ####
0x08, 0x40, // # #
0x10, 0x20, // # #
0x10, 0x20, // # #
0x10, 0x20, // # #
0x08, 0x40, // # #
0x07, 0x80, // ####
// @454 'P' (5 pixels wide)
0x1F, 0xE0, // ########
0x11, 0x00, // # #
0x11, 0x00, // # #
0x11, 0x00, // # #
0x0E, 0x00, // ###
// @464 'Q' (7 pixels wide)
0x07, 0x80, // ####
0x08, 0x40, // # #
0x10, 0x20, // # #
0x10, 0x20, // # #
0x10, 0x30, // # ##
0x08, 0x48, // # # #
0x07, 0x88, // #### #
// @478 'R' (6 pixels wide)
0x1F, 0xE0, // ########
0x11, 0x00, // # #
0x11, 0x00, // # #
0x11, 0x80, // # ##
0x0E, 0x40, // ### #
0x00, 0x20, // #
// @490 'S' (5 pixels wide)
0x0C, 0x20, // ## #
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x12, 0x20, // # # #
0x11, 0xC0, // # ###
// @500 'T' (5 pixels wide)
0x10, 0x00, // #
0x10, 0x00, // #
0x1F, 0xE0, // ########
0x10, 0x00, // #
0x10, 0x00, // #
// @510 'U' (6 pixels wide)
0x1F, 0xC0, // #######
0x00, 0x20, // #
0x00, 0x20, // #
0x00, 0x20, // #
0x00, 0x20, // #
0x1F, 0xC0, // #######
// @522 'V' (5 pixels wide)
0x1C, 0x00, // ###
0x03, 0x80, // ###
0x00, 0x60, // ##
0x03, 0x80, // ###
0x1C, 0x00, // ###
// @532 'W' (9 pixels wide)
0x1C, 0x00, // ###
0x03, 0x80, // ###
0x00, 0x60, // ##
0x03, 0x80, // ###
0x1C, 0x00, // ###
0x03, 0x80, // ###
0x00, 0x60, // ##
0x03, 0x80, // ###
0x1C, 0x00, // ###
// @550 'X' (5 pixels wide)
0x18, 0x60, // ## ##
0x04, 0x80, // # #
0x03, 0x00, // ##
0x04, 0x80, // # #
0x18, 0x60, // ## ##
// @560 'Y' (5 pixels wide)
0x18, 0x00, // ##
0x06, 0x00, // ##
0x01, 0xE0, // ####
0x06, 0x00, // ##
0x18, 0x00, // ##
// @570 'Z' (5 pixels wide)
0x10, 0x60, // # ##
0x10, 0xA0, // # # #
0x13, 0x20, // # ## #
0x14, 0x20, // # # #
0x18, 0x20, // ## #
// @580 '[' (3 pixels wide)
0x3F, 0xF8, // ###########
0x20, 0x08, // # #
0x20, 0x08, // # #
// @586 '\' (3 pixels wide)
0x38, 0x00, // ###
0x07, 0xC0, // #####
0x00, 0x38, // ###
// @592 ']' (3 pixels wide)
0x20, 0x08, // # #
0x20, 0x08, // # #
0x3F, 0xF8, // ###########
// @598 '^' (7 pixels wide)
0x02, 0x00, // #
0x04, 0x00, // #
0x08, 0x00, // #
0x10, 0x00, // #
0x08, 0x00, // #
0x04, 0x00, // #
0x02, 0x00, // #
// @612 '_' (6 pixels wide)
0x00, 0x08, // #
0x00, 0x08, // #
0x00, 0x08, // #
0x00, 0x08, // #
0x00, 0x08, // #
0x00, 0x08, // #
// @624 '`' (2 pixels wide)
0x20, 0x00, // #
0x10, 0x00, // #
// @628 'a' (5 pixels wide)
0x00, 0xC0, // ##
0x05, 0x20, // # # #
0x05, 0x20, // # # #
0x05, 0x20, // # # #
0x03, 0xE0, // #####
// @638 'b' (5 pixels wide)
0x3F, 0xE0, // #########
0x04, 0x20, // # #
0x04, 0x20, // # #
0x04, 0x20, // # #
0x03, 0xC0, // ####
// @648 'c' (4 pixels wide)
0x03, 0xC0, // ####
0x04, 0x20, // # #
0x04, 0x20, // # #
0x04, 0x20, // # #
// @656 'd' (5 pixels wide)
0x03, 0xC0, // ####
0x04, 0x20, // # #
0x04, 0x20, // # #
0x04, 0x20, // # #
0x3F, 0xE0, // #########
// @666 'e' (5 pixels wide)
0x03, 0xC0, // ####
0x05, 0x20, // # # #
0x05, 0x20, // # # #
0x05, 0x20, // # # #
0x03, 0x40, // ## #
// @676 'f' (3 pixels wide)
0x1F, 0xE0, // ########
0x24, 0x00, // # #
0x24, 0x00, // # #
// @682 'g' (5 pixels wide)
0x03, 0xC0, // ####
0x04, 0x28, // # # #
0x04, 0x28, // # # #
0x04, 0x28, // # # #
0x07, 0xF0, // #######
// @692 'h' (5 pixels wide)
0x3F, 0xE0, // #########
0x04, 0x00, // #
0x04, 0x00, // #
0x04, 0x00, // #
0x03, 0xE0, // #####
// @702 'i' (1 pixels wide)
0x17, 0xE0, // # ######
// @704 'j' (2 pixels wide)
0x04, 0x08, // # #
0x17, 0xF0, // # #######
// @708 'k' (5 pixels wide)
0x3F, 0xE0, // #########
0x01, 0x00, // #
0x02, 0x80, // # #
0x04, 0x40, // # #
0x00, 0x20, // #
// @718 'l' (1 pixels wide)
0x3F, 0xE0, // #########
// @720 'm' (7 pixels wide)
0x07, 0xE0, // ######
0x04, 0x00, // #
0x04, 0x00, // #
0x03, 0xE0, // #####
0x04, 0x00, // #
0x04, 0x00, // #
0x03, 0xE0, // #####
// @734 'n' (5 pixels wide)
0x07, 0xE0, // ######
0x04, 0x00, // #
0x04, 0x00, // #
0x04, 0x00, // #
0x03, 0xE0, // #####
// @744 'o' (5 pixels wide)
0x03, 0xC0, // ####
0x04, 0x20, // # #
0x04, 0x20, // # #
0x04, 0x20, // # #
0x03, 0xC0, // ####
// @754 'p' (5 pixels wide)
0x07, 0xF8, // ########
0x04, 0x20, // # #
0x04, 0x20, // # #
0x04, 0x20, // # #
0x03, 0xC0, // ####
// @764 'q' (5 pixels wide)
0x03, 0xC0, // ####
0x04, 0x20, // # #
0x04, 0x20, // # #
0x04, 0x20, // # #
0x07, 0xF8, // ########
// @774 'r' (3 pixels wide)
0x07, 0xE0, // ######
0x02, 0x00, // #
0x04, 0x00, // #
// @780 's' (4 pixels wide)
0x03, 0x20, // ## #
0x05, 0x20, // # # #
0x04, 0xA0, // # # #
0x04, 0xC0, // # ##
// @788 't' (3 pixels wide)
0x1F, 0xC0, // #######
0x04, 0x20, // # #
0x04, 0x20, // # #
// @794 'u' (5 pixels wide)
0x07, 0xC0, // #####
0x00, 0x20, // #
0x00, 0x20, // #
0x00, 0x20, // #
0x07, 0xE0, // ######
// @804 'v' (5 pixels wide)
0x06, 0x00, // ##
0x01, 0x80, // ##
0x00, 0x60, // ##
0x01, 0x80, // ##
0x06, 0x00, // ##
// @814 'w' (7 pixels wide)
0x07, 0x80, // ####
0x00, 0x60, // ##
0x01, 0x80, // ##
0x06, 0x00, // ##
0x01, 0x80, // ##
0x00, 0x60, // ##
0x07, 0x80, // ####
// @828 'x' (5 pixels wide)
0x04, 0x20, // # #
0x02, 0x40, // # #
0x01, 0x80, // ##
0x02, 0x40, // # #
0x04, 0x20, // # #
// @838 'y' (5 pixels wide)
0x06, 0x00, // ##
0x01, 0x98, // ## ##
0x00, 0x60, // ##
0x01, 0x80, // ##
0x06, 0x00, // ##
// @848 'z' (4 pixels wide)
0x04, 0x60, // # ##
0x04, 0xA0, // # # #
0x05, 0x20, // # # #
0x06, 0x20, // ## #
// @856 '{' (4 pixels wide)
0x01, 0x00, // #
0x01, 0x00, // #
0x1E, 0xF0, // #### ####
0x20, 0x08, // # #
// @864 '|' (1 pixels wide)
0x3F, 0xF8, // ###########
// @866 '}' (4 pixels wide)
0x20, 0x08, // # #
0x1E, 0xF0, // #### ####
0x01, 0x00, // #
0x01, 0x00, // #
// @874 '~' (7 pixels wide)
0x01, 0x80, // ##
0x02, 0x00, // #
0x02, 0x00, // #
0x01, 0x00, // #
0x00, 0x80, // #
0x00, 0x80, // #
0x03, 0x00, // ##
};
// Character descriptors for Tahoma 8pt
// { [Char width in bits], [Char height in bits], [Offset into tahoma_8ptCharBitmaps in bytes] }
const FONT_CHAR_INFO PROGMEM tahoma_8ptDescriptors[] =
{
{2, 13, 0}, //
{1, 13, 4}, // !
{3, 13, 6}, // "
{7, 13, 12}, // #
{5, 13, 26}, // $
{10, 13, 36}, // %
{7, 13, 56}, // &
{1, 13, 70}, // '
{3, 13, 72}, // (
{3, 13, 78}, // )
{5, 13, 84}, // *
{7, 13, 94}, // +
{2, 13, 108}, // ,
{3, 13, 112}, // -
{1, 13, 118}, // .
{3, 13, 120}, // /
{5, 13, 126}, // 0
{3, 13, 136}, // 1
{5, 13, 142}, // 2
{5, 13, 152}, // 3
{5, 13, 162}, // 4
{5, 13, 172}, // 5
{5, 13, 182}, // 6
{5, 13, 192}, // 7
{5, 13, 202}, // 8
{5, 13, 212}, // 9
{1, 13, 222}, // :
{2, 13, 224}, // ;
{6, 13, 228}, // <
{7, 13, 240}, // =
{6, 13, 254}, // >
{4, 13, 266}, // ?
{9, 13, 274}, // @
{6, 13, 292}, // A
{5, 13, 304}, // B
{6, 13, 314}, // C
{6, 13, 326}, // D
{5, 13, 338}, // E
{5, 13, 348}, // F
{6, 13, 358}, // G
{6, 13, 370}, // H
{3, 13, 382}, // I
{4, 13, 388}, // J
{5, 13, 396}, // K
{4, 13, 406}, // L
{7, 13, 414}, // M
{6, 13, 428}, // N
{7, 13, 440}, // O
{5, 13, 454}, // P
{7, 13, 464}, // Q
{6, 13, 478}, // R
{5, 13, 490}, // S
{5, 13, 500}, // T
{6, 13, 510}, // U
{5, 13, 522}, // V
{9, 13, 532}, // W
{5, 13, 550}, // X
{5, 13, 560}, // Y
{5, 13, 570}, // Z
{3, 13, 580}, // [
{3, 13, 586}, // \ .
{3, 13, 592}, // ]
{7, 13, 598}, // ^
{6, 13, 612}, // _
{2, 13, 624}, // `
{5, 13, 628}, // a
{5, 13, 638}, // b
{4, 13, 648}, // c
{5, 13, 656}, // d
{5, 13, 666}, // e
{3, 13, 676}, // f
{5, 13, 682}, // g
{5, 13, 692}, // h
{1, 13, 702}, // i
{2, 13, 704}, // j
{5, 13, 708}, // k
{1, 13, 718}, // l
{7, 13, 720}, // m
{5, 13, 734}, // n
{5, 13, 744}, // o
{5, 13, 754}, // p
{5, 13, 764}, // q
{3, 13, 774}, // r
{4, 13, 780}, // s
{3, 13, 788}, // t
{5, 13, 794}, // u
{5, 13, 804}, // v
{7, 13, 814}, // w
{5, 13, 828}, // x
{5, 13, 838}, // y
{4, 13, 848}, // z
{4, 13, 856}, // {
{1, 13, 864}, // |
{4, 13, 866}, // }
{7, 13, 874}, // ~
};
// Font information for Tahoma 8pt
const FONT_INFO tahoma_8ptFontInfo =
{
13, // Character height
' ', // Start character
'~', // End character
2, // Width, in pixels, of space character
tahoma_8ptDescriptors, // Character descriptor array
tahoma_8ptBitmaps, // Character bitmap array
};