скрытое меню

русские штрифты FreeType

русские штрифты FreeType

Эта страница не содержит систематизированной информации. Только заметки для создания и использования русских растровых штрифтов для ардуино проектов.

Исходники ардуино на UTF8. В редакторе все пишем , позволяет UTF-8 - латинские , русские строки.
Однако Serial не понимает UTF8, только ASCII.

'A' 1 символ
"A" строка символов

Char c='A'; // 1 байт
Русские фонты , массивы русских шрифтов храним в Unicode (2 байтовая кодировка)
wchar_t s11='A'; // 2 байта - это Unicode
wchar_t s12='Б';

Ссылки
int a=111;
int ref_a=(int)&a; // это адрес переменной a

***************************** пример создания фонтов ***************************************
//
const static word dd[] PROGMEM={ // здесь храняться преставления символов переменной ширины, 1 цыфра ширина символа
6,0,0,0,0,0,
5,0,0,0,0,
7,0,0,0,0,0,0
};

int symbols[]= // массив ссылок на представления каждого символа
{
'А',(int)&dd[0], // 0xd090
'Б',(int)&dd[6], // 0xd091
'В',(int)&dd[11] // 0xd092
//......
};

for(int i=0;i {
wchar_t wc=iii[i*2];
int addr=iii[i*2+1];
int val=pgm_read_word_near(addr);
Serial.println("\t 0x"+String(addr,HEX)+" = "+String(val,HEX));
}

****************************************************************************************************************

F() macro to put the printf() formatting strings into flash.
Serial.printf(F("Hello World\n"));
Serial.printf(F("Value is:%3d\n"), value);

wchar_t s13=L'A'; // 2 байта - это Unicode