grfont.c

来自「freetype库的应用demo,里面包含freetype的很多实例」· C语言 代码 · 共 374 行 · 第 1/2 页

C
374
字号
    0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18,    0x18, 0x18, 0x18, 0x18, 0xF8, 0x18, 0x18, 0x18,    0x18, 0x18, 0xF8, 0x18, 0xF8, 0x18, 0x18, 0x18,    0x36, 0x36, 0x36, 0x36, 0xF6, 0x36, 0x36, 0x36,    0x00, 0x00, 0x00, 0x00, 0xFE, 0x36, 0x36, 0x36,    0x00, 0x00, 0xF8, 0x18, 0xF8, 0x18, 0x18, 0x18,    0x36, 0x36, 0xF6, 0x06, 0xF6, 0x36, 0x36, 0x36,    0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36,    0x00, 0x00, 0xFE, 0x06, 0xF6, 0x36, 0x36, 0x36,    0x36, 0x36, 0xF6, 0x06, 0xFE, 0x00, 0x00, 0x00,    0x36, 0x36, 0x36, 0x36, 0xFE, 0x00, 0x00, 0x00,    0x18, 0x18, 0xF8, 0x18, 0xF8, 0x00, 0x00, 0x00,    0x00, 0x00, 0x00, 0x00, 0xF8, 0x18, 0x18, 0x18,    0x18, 0x18, 0x18, 0x18, 0x1F, 0x00, 0x00, 0x00,    0x18, 0x18, 0x18, 0x18, 0xFF, 0x00, 0x00, 0x00,    0x00, 0x00, 0x00, 0x00, 0xFF, 0x18, 0x18, 0x18,    0x18, 0x18, 0x18, 0x18, 0x1F, 0x18, 0x18, 0x18,    0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00,    0x18, 0x18, 0x18, 0x18, 0xFF, 0x18, 0x18, 0x18,    0x18, 0x18, 0x1F, 0x18, 0x1F, 0x18, 0x18, 0x18,    0x36, 0x36, 0x36, 0x36, 0x37, 0x36, 0x36, 0x36,    0x36, 0x36, 0x37, 0x30, 0x3F, 0x00, 0x00, 0x00,    0x00, 0x00, 0x3F, 0x30, 0x37, 0x36, 0x36, 0x36,    0x36, 0x36, 0xF7, 0x00, 0xFF, 0x00, 0x00, 0x00,    0x00, 0x00, 0xFF, 0x00, 0xF7, 0x36, 0x36, 0x36,    0x36, 0x36, 0x37, 0x30, 0x37, 0x36, 0x36, 0x36,    0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00,    0x36, 0x36, 0xF7, 0x00, 0xF7, 0x36, 0x36, 0x36,    0x18, 0x18, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x00,    0x36, 0x36, 0x36, 0x36, 0xFF, 0x00, 0x00, 0x00,    0x00, 0x00, 0xFF, 0x00, 0xFF, 0x18, 0x18, 0x18,    0x00, 0x00, 0x00, 0x00, 0xFF, 0x36, 0x36, 0x36,    0x36, 0x36, 0x36, 0x36, 0x3F, 0x00, 0x00, 0x00,    0x18, 0x18, 0x1F, 0x18, 0x1F, 0x00, 0x00, 0x00,    0x00, 0x00, 0x1F, 0x18, 0x1F, 0x18, 0x18, 0x18,    0x00, 0x00, 0x00, 0x00, 0x3F, 0x36, 0x36, 0x36,    0x36, 0x36, 0x36, 0x36, 0xFF, 0x36, 0x36, 0x36,    0x18, 0x18, 0xFF, 0x18, 0xFF, 0x18, 0x18, 0x18,    0x18, 0x18, 0x18, 0x18, 0xF8, 0x00, 0x00, 0x00,    0x00, 0x00, 0x00, 0x00, 0x1F, 0x18, 0x18, 0x18,    0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,    0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,    0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0,    0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F,    0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,    0x00, 0x00, 0x76, 0xDC, 0xC8, 0xDC, 0x76, 0x00,    0x00, 0x78, 0xCC, 0xF8, 0xCC, 0xF8, 0xC0, 0xC0,    0x00, 0xFC, 0xCC, 0xC0, 0xC0, 0xC0, 0xC0, 0x00,    0x00, 0x00, 0xFE, 0x6C, 0x6C, 0x6C, 0x6C, 0x00,    0xFC, 0xCC, 0x60, 0x30, 0x60, 0xCC, 0xFC, 0x00,    0x00, 0x00, 0x7E, 0xD8, 0xD8, 0xD8, 0x70, 0x00,    0x00, 0x66, 0x66, 0x66, 0x66, 0x7C, 0x60, 0xC0,    0x00, 0x76, 0xDC, 0x18, 0x18, 0x18, 0x18, 0x00,    0xFC, 0x30, 0x78, 0xCC, 0xCC, 0x78, 0x30, 0xFC,    0x38, 0x6C, 0xC6, 0xFE, 0xC6, 0x6C, 0x38, 0x00,    0x38, 0x6C, 0xC6, 0xC6, 0x6C, 0x6C, 0xEE, 0x00,    0x1C, 0x30, 0x18, 0x7C, 0xCC, 0xCC, 0x78, 0x00,    0x00, 0x00, 0x7E, 0xDB, 0xDB, 0x7E, 0x00, 0x00,    0x06, 0x0C, 0x7E, 0xDB, 0xDB, 0x7E, 0x60, 0xC0,    0x38, 0x60, 0xC0, 0xF8, 0xC0, 0x60, 0x38, 0x00,    0x78, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0x00,    0x00, 0x7E, 0x00, 0x7E, 0x00, 0x7E, 0x00, 0x00,    0x18, 0x18, 0x7E, 0x18, 0x18, 0x00, 0x7E, 0x00,    0x60, 0x30, 0x18, 0x30, 0x60, 0x00, 0xFC, 0x00,    0x18, 0x30, 0x60, 0x30, 0x18, 0x00, 0xFC, 0x00,    0x0E, 0x1B, 0x1B, 0x18, 0x18, 0x18, 0x18, 0x18,    0x18, 0x18, 0x18, 0x18, 0x18, 0xD8, 0xD8, 0x70,    0x18, 0x18, 0x00, 0x7E, 0x00, 0x18, 0x18, 0x00,    0x00, 0x76, 0xDC, 0x00, 0x76, 0xDC, 0x00, 0x00,    0x38, 0x6C, 0x6C, 0x38, 0x00, 0x00, 0x00, 0x00,    0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00,    0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,    0x0F, 0x0C, 0x0C, 0x0C, 0xEC, 0x6C, 0x3C, 0x1C,    0x58, 0x6C, 0x6C, 0x6C, 0x6C, 0x00, 0x00, 0x00,    0x70, 0x98, 0x30, 0x60, 0xF8, 0x00, 0x00, 0x00,    0x00, 0x00, 0x3C, 0x3C, 0x3C, 0x3C, 0x00, 0x00,    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00  };  static  grBitmap  gr_charcell =  {    8,                    /* rows  */    8,                    /* width */    1,                    /* pitch */    gr_pixel_mode_mono,   /* mode  */    0,                    /* grays */    0                     /* buffer */  };  void  grWriteCellChar( grBitmap*  target,                         int        x,                         int        y,                         int        charcode,                         grColor    color )  {    if (charcode < 0 || charcode > 255)      return;    gr_charcell.buffer = (unsigned char*)font_8x8 + 8 * charcode;    grBlitGlyphToBitmap( target, &gr_charcell, x, y, color );  }  void  grWriteCellString( grBitmap*   target,                           int         x,                           int         y,                           const char* string,                           grColor     color )  {    while (*string)    {      gr_charcell.buffer = (unsigned char *)font_8x8 +                             8 * (int)(unsigned char)*string++;      grBlitGlyphToBitmap( target, &gr_charcell, x, y, color );      x += 8;    }  }  static int        gr_cursor_x     = 0;  static int        gr_cursor_y     = 0;  static grBitmap*  gr_text_bitmap  = 0;  static int        gr_margin_right = 0;  static int        gr_margin_top   = 0;  extern void grGotobitmap( grBitmap*  bitmap )  {    gr_text_bitmap = bitmap;  }  extern void grSetMargin( int right, int top )  {    gr_margin_top   = top << 3;    gr_margin_right = right << 3;  }  extern void grSetPixelMargin( int  right, int  top )  {    gr_margin_top   = top;    gr_margin_right = right;  }  extern void grGotoxy ( int x, int y )  {    gr_cursor_x = x;    gr_cursor_y = y;  }  extern void grWrite  ( const char*  string )  {    if (string)    {	  grColor color;	  color.value = 127;      grWriteCellString( gr_text_bitmap,                         gr_margin_right + (gr_cursor_x << 3),                         gr_margin_top   + (gr_cursor_y << 3),                         string,                         color );      gr_cursor_x += strlen(string);    }  }  extern void grLn( void )  {    gr_cursor_y ++;    gr_cursor_x = 0;  }  extern void grWriteln( const char* string )  {    grWrite( string );    grLn();  }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?