Cyrillic support (Sample)
GUI_LANG_Cyrillic.c | |
---|---|
File(s) required |
|
Runs in simulation | Yes |
Runs on target | Yes |
Download | GUI_LANG_Cyrillic.c |
This emWin sample shows how cyrillic letters can be displayed.
Code
/*********************************************************************
* SEGGER Microcontroller GmbH *
* Solutions for real time microcontroller applications *
**********************************************************************
* *
* (c) 1996 - 2020 SEGGER Microcontroller GmbH *
* *
* Internet: www.segger.com Support: support@segger.com *
* *
**********************************************************************
** emWin V6.10 - Graphical user interface for embedded applications **
emWin is protected by international copyright laws. Knowledge of the
source code may not be used to write a similar product. This file may
only be used in accordance with a license and should not be re-
distributed in any way. We appreciate your understanding and fairness.
----------------------------------------------------------------------
File : GUI_LANG_Cyrillic.c
Purpose : Sample that demonstrates how cyrillic strings can be
displayed with emWin.
Requirements: WindowManager - ( )
MemoryDevices - ( )
AntiAliasing - ( )
VNC-Server - ( )
PNG-Library - ( )
TrueTypeFonts - ( )
---------------------------END-OF-HEADER------------------------------
*/
#include "GUI.h"
/*********************************************************************
*
* Defines
*
**********************************************************************
*/
#define STR_RUSSIAN "\xd0\x9f\xd1\x80\xd0\xb8\xd0\xb2\xd0\xb5\xd1\x82\x21\x20\xd0\x9a\xd0\xb0\xd0\xba\x20\xd1" \
"\x83\x20\xd1\x82\xd0\xb5\xd0\xb1\xd1\x8f\x20\xd1\x81\xd0\xb5\xd0\xb3\xd0\xbe\xd0\xb4\xd0" \
"\xbd\xd1\x8f\x20\xd0\xb4\xd0\xb5\xd0\xbb\xd0\xb0\x3f\x20"
/*********************************************************************
*
* Static data
*
**********************************************************************
*/
/* Start of unicode area <Basic Latin> */
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0020[ 1] = { /* code 0020, SPACE */
0x00
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0021[ 28] = { /* code 0021, EXCLAMATION MARK */
0x6F, 0x70,
0x6F, 0x70,
0x6F, 0x70,
0x6F, 0x70,
0x4F, 0x70,
0x4F, 0x70,
0x4F, 0x70,
0x4F, 0x60,
0x4F, 0x60,
0x4F, 0x60,
0x00, 0x00,
0x00, 0x00,
0x4F, 0x80,
0x4F, 0x80
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_003F[ 70] = { /* code 003F, QUESTION MARK */
0x00, 0x7D, 0xFE, 0xB3, 0x00,
0x09, 0xFF, 0xFF, 0xFE, 0x20,
0x2F, 0xE4, 0x01, 0xAF, 0x80,
0x27, 0x40, 0x00, 0x3F, 0x90,
0x00, 0x00, 0x00, 0x4F, 0x80,
0x00, 0x00, 0x01, 0xDF, 0x20,
0x00, 0x00, 0x1D, 0xF6, 0x00,
0x00, 0x00, 0xCF, 0x50, 0x00,
0x00, 0x05, 0xF9, 0x00, 0x00,
0x00, 0x07, 0xF5, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x06, 0xF5, 0x00, 0x00,
0x00, 0x06, 0xF5, 0x00, 0x00
};
/* Start of unicode area <Cyrillic> */
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_041A[ 84] = { /* code 041A, CYRILLIC CAPITAL LETTER KA */
0x4F, 0x90, 0x00, 0x00, 0x6F, 0xE1,
0x4F, 0x90, 0x00, 0x03, 0xFF, 0x30,
0x4F, 0x90, 0x00, 0x2E, 0xF6, 0x00,
0x4F, 0x90, 0x01, 0xCF, 0x90, 0x00,
0x4F, 0x90, 0x0A, 0xFC, 0x00, 0x00,
0x4F, 0x90, 0x7F, 0xE1, 0x00, 0x00,
0x4F, 0xFF, 0xFF, 0x30, 0x00, 0x00,
0x4F, 0xFF, 0xFF, 0x80, 0x00, 0x00,
0x4F, 0x90, 0x4F, 0xF5, 0x00, 0x00,
0x4F, 0x90, 0x06, 0xFE, 0x30, 0x00,
0x4F, 0x90, 0x00, 0x8F, 0xD1, 0x00,
0x4F, 0x90, 0x00, 0x0A, 0xFB, 0x00,
0x4F, 0x90, 0x00, 0x00, 0xBF, 0x90,
0x4F, 0x90, 0x00, 0x00, 0x1D, 0xF6
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_041F[ 84] = { /* code 041F, CYRILLIC CAPITAL LETTER PE */
0x4F, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7,
0x4F, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7,
0x4F, 0x90, 0x00, 0x00, 0x06, 0xF7
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0430[ 55] = { /* code 0430, CYRILLIC SMALL LETTER A */
0x02, 0x9E, 0xFE, 0x91, 0x00,
0x2E, 0xFF, 0xFF, 0xFD, 0x00,
0x8D, 0x71, 0x02, 0xBF, 0x50,
0x00, 0x00, 0x00, 0x6F, 0x70,
0x02, 0x9D, 0xFF, 0xFF, 0x70,
0x3E, 0xFF, 0xFF, 0xFF, 0x70,
0xAF, 0x93, 0x00, 0x6F, 0x70,
0xDF, 0x00, 0x00, 0x6F, 0x70,
0xCF, 0x60, 0x15, 0xEF, 0x70,
0x5F, 0xFF, 0xFF, 0xEF, 0x80,
0x05, 0xCF, 0xE8, 0x3F, 0xB0
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0431[ 90] = { /* code 0431, CYRILLIC SMALL LETTER BE */
0x00, 0x00, 0x00, 0x01, 0xE9, 0x00,
0x00, 0x00, 0x27, 0xAE, 0xF4, 0x00,
0x00, 0x09, 0xFF, 0xEA, 0x40, 0x00,
0x00, 0x9F, 0x93, 0x00, 0x00, 0x00,
0x03, 0xF5, 0x00, 0x00, 0x00, 0x00,
0x09, 0xC4, 0xBF, 0xFB, 0x40, 0x00,
0x0D, 0xDF, 0xFF, 0xFF, 0xF4, 0x00,
0x0F, 0xFB, 0x30, 0x18, 0xFE, 0x00,
0x1F, 0xE1, 0x00, 0x00, 0xBF, 0x30,
0x2F, 0xB0, 0x00, 0x00, 0x7F, 0x60,
0x1F, 0xC0, 0x00, 0x00, 0x8F, 0x50,
0x0D, 0xF2, 0x00, 0x00, 0xCF, 0x30,
0x08, 0xFC, 0x30, 0x29, 0xFC, 0x00,
0x01, 0xCF, 0xFF, 0xFF, 0xE3, 0x00,
0x00, 0x18, 0xDF, 0xEA, 0x20, 0x00
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0432[ 55] = { /* code 0432, CYRILLIC SMALL LETTER VE */
0x9F, 0xFF, 0xFE, 0xC6, 0x00,
0x9F, 0xFF, 0xFF, 0xFF, 0x70,
0x9F, 0x20, 0x01, 0x5F, 0xB0,
0x9F, 0x20, 0x01, 0x5F, 0xA0,
0x9F, 0xFF, 0xFF, 0xFB, 0x10,
0x9F, 0xFF, 0xFF, 0xFE, 0x40,
0x9F, 0x20, 0x00, 0x4E, 0xE0,
0x9F, 0x20, 0x00, 0x0A, 0xF3,
0x9F, 0x20, 0x00, 0x4E, 0xF1,
0x9F, 0xFF, 0xFF, 0xFF, 0xB0,
0x9F, 0xFF, 0xFF, 0xD8, 0x10
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0433[ 44] = { /* code 0433, CYRILLIC SMALL LETTER GHE */
0x7F, 0xFF, 0xFF, 0xF4,
0x7F, 0xFF, 0xFF, 0xF4,
0x7F, 0x60, 0x00, 0x00,
0x7F, 0x60, 0x00, 0x00,
0x7F, 0x60, 0x00, 0x00,
0x7F, 0x60, 0x00, 0x00,
0x7F, 0x60, 0x00, 0x00,
0x7F, 0x60, 0x00, 0x00,
0x7F, 0x60, 0x00, 0x00,
0x7F, 0x60, 0x00, 0x00,
0x7F, 0x60, 0x00, 0x00
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0434[ 84] = { /* code 0434, CYRILLIC SMALL LETTER DE */
0x00, 0x0B, 0xFF, 0xFF, 0xFF, 0x00,
0x00, 0x0D, 0xFF, 0xFF, 0xFF, 0x00,
0x00, 0x0D, 0xF0, 0x00, 0xBF, 0x00,
0x00, 0x0D, 0xD0, 0x00, 0xBF, 0x00,
0x00, 0x0E, 0xD0, 0x00, 0xBF, 0x00,
0x00, 0x1F, 0xB0, 0x00, 0xBF, 0x00,
0x00, 0x4F, 0x80, 0x00, 0xBF, 0x00,
0x00, 0xAF, 0x30, 0x00, 0xBF, 0x00,
0x05, 0xFB, 0x00, 0x00, 0xBF, 0x00,
0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xF6,
0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xF6,
0x9F, 0x40, 0x00, 0x00, 0x06, 0xF6,
0x9F, 0x40, 0x00, 0x00, 0x06, 0xF6,
0x9F, 0x40, 0x00, 0x00, 0x06, 0xF6
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0435[ 55] = { /* code 0435, CYRILLIC SMALL LETTER IE */
0x00, 0x5C, 0xFE, 0xA2, 0x00,
0x08, 0xFF, 0xFF, 0xFE, 0x20,
0x3F, 0xD3, 0x01, 0x8F, 0x90,
0x9F, 0x20, 0x00, 0x0C, 0xE0,
0xCF, 0xFF, 0xFF, 0xFF, 0xF1,
0xDF, 0xFF, 0xFF, 0xFF, 0xF2,
0xDF, 0x00, 0x00, 0x00, 0x00,
0xAF, 0x50, 0x00, 0x00, 0x00,
0x4F, 0xE6, 0x10, 0x3A, 0x60,
0x09, 0xFF, 0xFF, 0xFF, 0x80,
0x00, 0x6C, 0xFF, 0xC5, 0x00
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0438[ 55] = { /* code 0438, CYRILLIC SMALL LETTER I */
0x7F, 0x60, 0x00, 0x2F, 0xF0,
0x7F, 0x60, 0x00, 0xBF, 0xF0,
0x7F, 0x60, 0x05, 0xFF, 0xF0,
0x7F, 0x60, 0x0D, 0xDC, 0xF0,
0x7F, 0x60, 0x8F, 0x4B, 0xF0,
0x7F, 0x62, 0xFA, 0x0B, 0xF0,
0x7F, 0x6B, 0xE2, 0x0B, 0xF0,
0x7F, 0xBF, 0x70, 0x0B, 0xF0,
0x7F, 0xFC, 0x00, 0x0B, 0xF0,
0x7F, 0xF3, 0x00, 0x0B, 0xF0,
0x7F, 0xA0, 0x00, 0x0B, 0xF0
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_043A[ 55] = { /* code 043A, CYRILLIC SMALL LETTER KA */
0x7F, 0x60, 0x00, 0x5F, 0xC1,
0x7F, 0x60, 0x04, 0xFD, 0x10,
0x7F, 0x60, 0x3E, 0xE2, 0x00,
0x7F, 0x62, 0xEE, 0x30, 0x00,
0x7F, 0xFF, 0xF6, 0x00, 0x00,
0x7F, 0xFF, 0xF9, 0x00, 0x00,
0x7F, 0x61, 0xDF, 0x50, 0x00,
0x7F, 0x60, 0x4F, 0xE2, 0x00,
0x7F, 0x60, 0x07, 0xFC, 0x00,
0x7F, 0x60, 0x00, 0xBF, 0x80,
0x7F, 0x60, 0x00, 0x2E, 0xF4
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_043B[ 66] = { /* code 043B, CYRILLIC SMALL LETTER EL */
0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0x40,
0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0x40,
0x00, 0x0F, 0xB0, 0x00, 0x9F, 0x40,
0x00, 0x2F, 0xB0, 0x00, 0x9F, 0x40,
0x00, 0x2F, 0x90, 0x00, 0x9F, 0x40,
0x00, 0x3F, 0x90, 0x00, 0x9F, 0x40,
0x00, 0x4F, 0x80, 0x00, 0x9F, 0x40,
0x00, 0x7F, 0x60, 0x00, 0x9F, 0x40,
0x02, 0xDF, 0x30, 0x00, 0x9F, 0x40,
0x6F, 0xFC, 0x00, 0x00, 0x9F, 0x40,
0x6F, 0xB2, 0x00, 0x00, 0x9F, 0x40
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_043D[ 55] = { /* code 043D, CYRILLIC SMALL LETTER EN */
0x7F, 0x60, 0x00, 0x0D, 0xF0,
0x7F, 0x60, 0x00, 0x0D, 0xF0,
0x7F, 0x60, 0x00, 0x0D, 0xF0,
0x7F, 0x60, 0x00, 0x0D, 0xF0,
0x7F, 0xFF, 0xFF, 0xFF, 0xF0,
0x7F, 0xFF, 0xFF, 0xFF, 0xF0,
0x7F, 0x60, 0x00, 0x0D, 0xF0,
0x7F, 0x60, 0x00, 0x0D, 0xF0,
0x7F, 0x60, 0x00, 0x0D, 0xF0,
0x7F, 0x60, 0x00, 0x0D, 0xF0,
0x7F, 0x60, 0x00, 0x0D, 0xF0
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_043E[ 66] = { /* code 043E, CYRILLIC SMALL LETTER O */
0x00, 0x19, 0xEF, 0xE9, 0x10, 0x00,
0x01, 0xDF, 0xFF, 0xFF, 0xD1, 0x00,
0x09, 0xFB, 0x30, 0x3B, 0xFA, 0x00,
0x1F, 0xE1, 0x00, 0x01, 0xEF, 0x10,
0x4F, 0x90, 0x00, 0x00, 0x9F, 0x40,
0x4F, 0x70, 0x00, 0x00, 0x7F, 0x40,
0x4F, 0x90, 0x00, 0x00, 0x9F, 0x40,
0x1F, 0xE1, 0x00, 0x01, 0xEF, 0x10,
0x0A, 0xFB, 0x30, 0x3B, 0xFA, 0x00,
0x01, 0xDF, 0xFF, 0xFF, 0xD1, 0x00,
0x00, 0x19, 0xEF, 0xE9, 0x10, 0x00
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0440[ 75] = { /* code 0440, CYRILLIC SMALL LETTER ER */
0xBE, 0x3B, 0xFF, 0xB3, 0x00,
0xBF, 0xEF, 0xFF, 0xFE, 0x20,
0xBF, 0xB3, 0x03, 0xBF, 0xA0,
0xBF, 0x20, 0x00, 0x1E, 0xF0,
0xBF, 0x20, 0x00, 0x0A, 0xF2,
0xBF, 0x20, 0x00, 0x09, 0xF2,
0xBF, 0x20, 0x00, 0x0B, 0xF2,
0xBF, 0x20, 0x00, 0x1E, 0xF0,
0xBF, 0xB3, 0x02, 0xBF, 0xA0,
0xBF, 0xFF, 0xFF, 0xFE, 0x20,
0xBF, 0x5B, 0xFF, 0xB3, 0x00,
0xBF, 0x20, 0x00, 0x00, 0x00,
0xBF, 0x20, 0x00, 0x00, 0x00,
0xBF, 0x20, 0x00, 0x00, 0x00,
0xBF, 0x20, 0x00, 0x00, 0x00
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0441[ 55] = { /* code 0441, CYRILLIC SMALL LETTER ES */
0x00, 0x2A, 0xEF, 0xD7, 0x00,
0x03, 0xEF, 0xFF, 0xFF, 0xA0,
0x0B, 0xF9, 0x20, 0x3D, 0xF4,
0x2F, 0xC0, 0x00, 0x03, 0xD7,
0x4F, 0x80, 0x00, 0x00, 0x00,
0x6F, 0x70, 0x00, 0x00, 0x00,
0x4F, 0x80, 0x00, 0x00, 0x00,
0x2F, 0xC0, 0x00, 0x02, 0x74,
0x0B, 0xF9, 0x20, 0x3C, 0xF4,
0x03, 0xEF, 0xFF, 0xFF, 0xA0,
0x00, 0x2A, 0xEF, 0xD6, 0x00
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0442[ 55] = { /* code 0442, CYRILLIC SMALL LETTER TE */
0x9F, 0xFF, 0xFF, 0xFF, 0xF4,
0x9F, 0xFF, 0xFF, 0xFF, 0xF4,
0x00, 0x02, 0xF9, 0x00, 0x00,
0x00, 0x02, 0xF9, 0x00, 0x00,
0x00, 0x02, 0xF9, 0x00, 0x00,
0x00, 0x02, 0xF9, 0x00, 0x00,
0x00, 0x02, 0xF9, 0x00, 0x00,
0x00, 0x02, 0xF9, 0x00, 0x00,
0x00, 0x02, 0xF9, 0x00, 0x00,
0x00, 0x02, 0xF9, 0x00, 0x00,
0x00, 0x02, 0xF9, 0x00, 0x00
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_0443[ 75] = { /* code 0443, CYRILLIC SMALL LETTER U */
0xDF, 0x20, 0x00, 0x2F, 0xC0,
0x7F, 0x70, 0x00, 0x6F, 0x70,
0x2F, 0xB0, 0x00, 0xBF, 0x20,
0x0B, 0xF2, 0x01, 0xFB, 0x00,
0x06, 0xF7, 0x05, 0xF7, 0x00,
0x01, 0xFB, 0x0A, 0xF2, 0x00,
0x00, 0xAF, 0x2E, 0xB0, 0x00,
0x00, 0x5F, 0xAF, 0x60, 0x00,
0x00, 0x0E, 0xFF, 0x10, 0x00,
0x00, 0x09, 0xFB, 0x00, 0x00,
0x00, 0x05, 0xF5, 0x00, 0x00,
0x00, 0x0A, 0xF1, 0x00, 0x00,
0x00, 0x6F, 0xA0, 0x00, 0x00,
0x6F, 0xFF, 0x30, 0x00, 0x00,
0x5F, 0xD4, 0x00, 0x00, 0x00
};
static GUI_CONST_STORAGE unsigned char acGUI_FontRoboto24_044F[ 55] = { /* code 044F, CYRILLIC SMALL LETTER YA */
0x00, 0x5C, 0xFF, 0xFF, 0xF7,
0x05, 0xFF, 0xFF, 0xFF, 0xF7,
0x0C, 0xF6, 0x10, 0x06, 0xF7,
0x0F, 0xD0, 0x00, 0x06, 0xF7,
0x0C, 0xF6, 0x00, 0x06, 0xF7,
0x06, 0xFF, 0xFF, 0xFF, 0xF7,
0x00, 0x5F, 0xFF, 0xFF, 0xF7,
0x00, 0x5F, 0x90, 0x06, 0xF7,
0x01, 0xEE, 0x10, 0x06, 0xF7,
0x09, 0xF5, 0x00, 0x06, 0xF7,
0x3F, 0xB0, 0x00, 0x06, 0xF7
};
static GUI_CONST_STORAGE GUI_CHARINFO_EXT GUI_FontRoboto24_CharInfo[21] = {
{ 1, 1, 0, 19, 5, acGUI_FontRoboto24_0020 } /* code 0020, SPACE */
,{ 3, 14, 1, 5, 5, acGUI_FontRoboto24_0021 } /* code 0021, EXCLAMATION MARK */
,{ 9, 14, 0, 5, 9, acGUI_FontRoboto24_003F } /* code 003F, QUESTION MARK */
,{ 12, 14, 1, 5, 13, acGUI_FontRoboto24_041A } /* code 041A, CYRILLIC CAPITAL LETTER KA */
,{ 12, 14, 1, 5, 14, acGUI_FontRoboto24_041F } /* code 041F, CYRILLIC CAPITAL LETTER PE */
,{ 9, 11, 1, 8, 11, acGUI_FontRoboto24_0430 } /* code 0430, CYRILLIC SMALL LETTER A */
,{ 11, 15, 0, 4, 11, acGUI_FontRoboto24_0431 } /* code 0431, CYRILLIC SMALL LETTER BE */
,{ 10, 11, 1, 8, 11, acGUI_FontRoboto24_0432 } /* code 0432, CYRILLIC SMALL LETTER VE */
,{ 8, 11, 1, 8, 8, acGUI_FontRoboto24_0433 } /* code 0433, CYRILLIC SMALL LETTER GHE */
,{ 12, 14, 0, 8, 12, acGUI_FontRoboto24_0434 } /* code 0434, CYRILLIC SMALL LETTER DE */
,{ 10, 11, 1, 8, 11, acGUI_FontRoboto24_0435 } /* code 0435, CYRILLIC SMALL LETTER IE */
,{ 9, 11, 1, 8, 12, acGUI_FontRoboto24_0438 } /* code 0438, CYRILLIC SMALL LETTER I */
,{ 10, 11, 1, 8, 11, acGUI_FontRoboto24_043A } /* code 043A, CYRILLIC SMALL LETTER KA */
,{ 11, 11, 0, 8, 12, acGUI_FontRoboto24_043B } /* code 043B, CYRILLIC SMALL LETTER EL */
,{ 9, 11, 1, 8, 12, acGUI_FontRoboto24_043D } /* code 043D, CYRILLIC SMALL LETTER EN */
,{ 11, 11, 0, 8, 11, acGUI_FontRoboto24_043E } /* code 043E, CYRILLIC SMALL LETTER O */
,{ 10, 15, 1, 8, 11, acGUI_FontRoboto24_0440 } /* code 0440, CYRILLIC SMALL LETTER ER */
,{ 10, 11, 0, 8, 10, acGUI_FontRoboto24_0441 } /* code 0441, CYRILLIC SMALL LETTER ES */
,{ 10, 11, 0, 8, 10, acGUI_FontRoboto24_0442 } /* code 0442, CYRILLIC SMALL LETTER TE */
,{ 9, 15, 0, 8, 9, acGUI_FontRoboto24_0443 } /* code 0443, CYRILLIC SMALL LETTER U */
,{ 10, 11, 0, 8, 11, acGUI_FontRoboto24_044F } /* code 044F, CYRILLIC SMALL LETTER YA */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop10 = {
0x044F /* first character */
,0x044F /* last character */
,&GUI_FontRoboto24_CharInfo[ 20] /* address of first character */
,(GUI_CONST_STORAGE GUI_FONT_PROP_EXT *)0 /* pointer to next GUI_FONT_PROP_EXT */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop9 = {
0x0440 /* first character */
,0x0443 /* last character */
,&GUI_FontRoboto24_CharInfo[ 16] /* address of first character */
,&GUI_FontRoboto24_Prop10 /* pointer to next GUI_FONT_PROP_EXT */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop8 = {
0x043D /* first character */
,0x043E /* last character */
,&GUI_FontRoboto24_CharInfo[ 14] /* address of first character */
,&GUI_FontRoboto24_Prop9 /* pointer to next GUI_FONT_PROP_EXT */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop7 = {
0x043A /* first character */
,0x043B /* last character */
,&GUI_FontRoboto24_CharInfo[ 12] /* address of first character */
,&GUI_FontRoboto24_Prop8 /* pointer to next GUI_FONT_PROP_EXT */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop6 = {
0x0438 /* first character */
,0x0438 /* last character */
,&GUI_FontRoboto24_CharInfo[ 11] /* address of first character */
,&GUI_FontRoboto24_Prop7 /* pointer to next GUI_FONT_PROP_EXT */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop5 = {
0x0430 /* first character */
,0x0435 /* last character */
,&GUI_FontRoboto24_CharInfo[ 5] /* address of first character */
,&GUI_FontRoboto24_Prop6 /* pointer to next GUI_FONT_PROP_EXT */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop4 = {
0x041F /* first character */
,0x041F /* last character */
,&GUI_FontRoboto24_CharInfo[ 4] /* address of first character */
,&GUI_FontRoboto24_Prop5 /* pointer to next GUI_FONT_PROP_EXT */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop3 = {
0x041A /* first character */
,0x041A /* last character */
,&GUI_FontRoboto24_CharInfo[ 3] /* address of first character */
,&GUI_FontRoboto24_Prop4 /* pointer to next GUI_FONT_PROP_EXT */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop2 = {
0x003F /* first character */
,0x003F /* last character */
,&GUI_FontRoboto24_CharInfo[ 2] /* address of first character */
,&GUI_FontRoboto24_Prop3 /* pointer to next GUI_FONT_PROP_EXT */
};
static GUI_CONST_STORAGE GUI_FONT_PROP_EXT GUI_FontRoboto24_Prop1 = {
0x0020 /* first character */
,0x0021 /* last character */
,&GUI_FontRoboto24_CharInfo[ 0] /* address of first character */
,&GUI_FontRoboto24_Prop2 /* pointer to next GUI_FONT_PROP_EXT */
};
GUI_CONST_STORAGE GUI_FONT GUI_FontRoboto24 = {
GUI_FONTTYPE_PROP_AA4_EXT /* type of font */
,24 /* height of font */
,24 /* space of font y */
,1 /* magnification x */
,1 /* magnification y */
,{&GUI_FontRoboto24_Prop1}
,19 /* Baseline */
,11 /* Height of lowercase characters */
,14 /* Height of capital characters */
};
/*********************************************************************
*
* Static code
*
**********************************************************************
*/
/*********************************************************************
*
* Public code
*
**********************************************************************
*/
/*********************************************************************
*
* MainTask
*/
void MainTask(void) {
//
// Init emWin.
//
GUI_Init();
GUI_SetBkColor(GUI_WHITE);
GUI_Clear();
//
// Enable UTF-8 encoding and set font
// that contains Cyrillic characters
//
GUI_UC_SetEncodeUTF8();
GUI_SetFont(&GUI_FontRoboto24);
GUI_SetColor(GUI_BLACK);
GUI_DispString(STR_RUSSIAN);
while (1) {
GUI_Delay(100);
}
}
/*************************** End of file ****************************/