U8GLIB и русская кодировка
- Войдите на сайт для отправки комментариев
Давно не писал дорогие софорумцы!
Суть такая, осваивал новый ЖК дисплей с вкусными размерами корпуса, но не на подтвержденном контролере. Гугление и помощь от создателя библиотеки U8GLIB помогли его запустить и заставить нормально работать.
На вопрос о кирилице, он ответил что у него небыло ни одного фидбека, что наводит на всякие мысли...
Вот ссылка на тикет от меня https://code.google.com/p/u8glib/issues/detail?id=202 который закончился появлением новой версии библиотеки.
Просьба к нашим гуру, которые занимались вопросом руссификации, не бойтесь и обратитесь с помощью к создателю библиотеки. Я писал через гуглопереводчик т.к. английский только на уровне чтения. В общем не бойтесь обращаться с разрабами. И глядишь появится нормальная робота с кодировкой из коробки, чему непримерно обрадуется все русскоговорящее сообщество Arduino. И да поговорите с ним о возможности самим добавлять свои шрифты как в GLCDv3
Цетирую:
Project Member #11 olikr...@gmail.com
В общем разработчик ждет когда кто-то с ним свяжется.
Я могу добавлять свои шрифты в эту библиотеку. По умолчанию все не ANSI сивмолы кодюруются двухбайтным юникодом. Библиотека его не понимает. Но понимает любые однобайтные кодировки. есть программа для перевода шрифтов .bdf в код C
Также есть редактор шрифтов FontForge который понимает BDF. В нем я переконвертировал шрифты в ISO8859-5. Подправил код среды IDE Arduino и добавил выбор кодировки которую я хочу на выходе. Вобщем ценой 10 строк кода на яве и перекомпиляции среды я достиг желаемого: Пишу на русском, показывает на русском. Пинать бедных разработчиков не мой профиль. Но работы с юникодом в библитеке явно не хватает. Может написать?
Кириллица была добавлена по моей просьбе еще полтора года назад.
Да и инструмент для добавления шрифтов он еще прошлым летом выложил.
Почиму сразу пинать, просто к ниму никто не обращался по этой проблеме. Я понимаю что вы решили проблему, но так не сможет сделать простой пользователь, например для меня это космос:) Возможно он сможет решить проблему просто, он про нее до этого не знал. Ведь для вас было по силам перебрать исходники Arduino, а для разработчика написать библиотеку на большое количество контралеров. Да и думаю вы будите не одни в решении этой проблемы, кто то еще может подключиться!
Да и инструмент для добавления шрифтов он еще прошлым летом выложил.
И как им пользоваться?
вот тут
и тут немножко
Расписал все для домохозяек...
Хорошо написано. Только я делал как то проще, без перекодировки. Надо посмотреть, может исходники остались.
И что делать с этим? Уже кстати пытался по вашему пути идти но уперся в это:(
Хорошо написано. Только я делал как то проще, без перекодировки. Надо посмотреть, может исходники остались.
Вот и получается как с "домастской сталью", шучу конечно, но ничего не понятно.
из "C:\Program Files\FontForge\bin\share\locale" удалить папку "ru". Под убунтой кстати такой проблемы не наблюдается....
сковертировать в код с и заменить или добавить как новый
А где взять соответствие номеров сиволов в шрифте с данными?
И как сгенерировать С-шный шрифт?
или я вас не понял или вы не читали по ссылкам выше. Вообще предпологается хоть какое нибудь понимание как это все работает - если его нет то только гугл!(включая все смежные темы)
Пришел к выводу, что лучше буду рисовать буквы битовыми картинками в шестнадцатиричной системе, чем лезть в такие дебри где костыль на костыле...
И просто хотелось упростить жизнь, и себе и другим, а лезть в исходники Ардуины, это уровень уже не для ардуинщика! К томуже я врятли вспомню как это делал через пол года, а скачав библиотеку это не понадобится делать. Пускай лучше русский будит через опу написан чем с таким гемороем, я честно разобрался как это делалось в GLCDv3 но тут уже мозг плавится, сейчас посмотрел на шрифты, которые в библиотеке чтобы переделать один с размером 32 по вертикали т.к. одна цифра там уплыла относительно других на один пиксель, пока хз куда копать, но разберусь.
Обещал разобраться, разобрался, ничего в исходниках менять не нужно, просто нужно заменить в файле u8g_font_data.c который находится в arduino-1.0.5\libraries\U8glib\utility\ открываете в блакноте (или лучше в нормальном редакторе, у меня из сборке тотал-командера звать AkelPad т.к. блокнот может накосячить при сохранении) и заменяете все что касается шрифта u8g_font_unifont_0_8, начиная с коментария и заканчивая концом массива там что написанно ниже.
/* Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 Copyright: Capital A Height: 10, '1' Height: 10 Calculated Max Values w=16 h=16 x= 4 y=14 dx=16 dy= 0 ascent=14 len=32 Font Bounding box w=16 h=16 x= 0 y=-2 Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 Pure Font ascent =10 descent=-2 X Font ascent =11 descent=-2 Max Font ascent =14 descent=-2 */ #include "u8g.h" const u8g_fntpgm_uint8_t u8g_font_unifont_0_8[4239] U8G_FONT_SECTION("u8g_font_unifont_0_8") = { 0,16,16,0,254,10,1,231,3,213,32,255,254,14,254,11, 254,0,0,0,8,0,14,1,10,10,8,4,0,128,128,128, 128,128,128,128,0,128,128,5,4,4,8,2,8,136,136,136, 136,6,10,10,8,1,0,36,36,36,252,72,72,252,144,144, 144,7,10,10,8,1,0,16,124,146,144,112,28,18,146,124, 16,7,10,10,8,1,0,98,148,148,104,16,16,44,82,82, 140,7,10,10,8,1,0,56,68,68,68,56,114,138,132,140, 114,1,4,4,8,4,8,128,128,128,128,3,12,12,8,3, 255,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, 8,2,255,128,64,64,32,32,32,32,32,32,64,64,128,7, 7,7,8,1,1,16,146,84,56,84,146,16,7,7,7,8, 1,1,16,16,16,254,16,16,16,2,4,4,8,3,254,192, 64,64,128,6,1,1,8,1,4,252,2,2,2,8,3,0, 192,192,6,10,10,8,1,0,4,4,8,16,16,32,32,64, 128,128,6,10,10,8,1,0,48,72,132,132,132,132,132,132, 72,48,5,10,10,8,2,0,32,96,160,32,32,32,32,32, 32,248,6,10,10,8,1,0,120,132,132,4,24,32,64,128, 128,252,6,10,10,8,1,0,120,132,132,4,56,4,4,132, 132,120,6,10,10,8,1,0,8,24,40,72,136,136,252,8, 8,8,6,10,10,8,1,0,252,128,128,128,248,4,4,4, 132,120,6,10,10,8,1,0,56,64,128,128,248,132,132,132, 132,120,6,10,10,8,1,0,252,4,4,8,8,8,16,16, 16,16,6,10,10,8,1,0,120,132,132,132,120,132,132,132, 132,120,6,10,10,8,1,0,120,132,132,132,124,4,4,4, 8,112,2,7,7,8,3,1,192,192,0,0,0,192,192,2, 9,9,8,3,255,192,192,0,0,0,192,64,64,128,5,9, 9,8,2,0,8,16,32,64,128,64,32,16,8,6,5,5, 8,1,2,252,0,0,0,252,5,9,9,8,1,0,128,64, 32,16,8,16,32,64,128,6,10,10,8,1,0,120,132,132, 4,8,16,16,0,16,16,6,10,10,8,1,0,56,68,148, 172,164,164,164,156,64,60,6,10,10,8,1,0,48,72,72, 132,132,252,132,132,132,132,6,10,10,8,1,0,248,132,132, 132,248,132,132,132,132,248,6,10,10,8,1,0,120,132,132, 128,128,128,128,132,132,120,6,10,10,8,1,0,240,136,132, 132,132,132,132,132,136,240,6,10,10,8,1,0,252,128,128, 128,248,128,128,128,128,252,6,10,10,8,1,0,252,128,128, 128,248,128,128,128,128,128,6,10,10,8,1,0,120,132,132, 128,128,156,132,132,140,116,6,10,10,8,1,0,132,132,132, 132,252,132,132,132,132,132,5,10,10,8,2,0,248,32,32, 32,32,32,32,32,32,248,7,10,10,8,1,0,62,8,8, 8,8,8,8,136,136,112,6,10,10,8,1,0,132,136,144, 160,192,192,160,144,136,132,6,10,10,8,1,0,128,128,128, 128,128,128,128,128,128,252,6,10,10,8,1,0,132,132,204, 204,180,180,132,132,132,132,6,10,10,8,1,0,132,196,196, 164,164,148,148,140,140,132,6,10,10,8,1,0,120,132,132, 132,132,132,132,132,132,120,6,10,10,8,1,0,248,132,132, 132,248,128,128,128,128,128,7,11,11,8,1,255,120,132,132, 132,132,132,132,180,204,120,6,6,10,10,8,1,0,248,132, 132,132,248,144,136,136,132,132,6,10,10,8,1,0,120,132, 132,128,96,24,4,132,132,120,7,10,10,8,1,0,254,16, 16,16,16,16,16,16,16,16,6,10,10,8,1,0,132,132, 132,132,132,132,132,132,132,120,7,10,10,8,1,0,130,130, 130,68,68,68,40,40,16,16,6,10,10,8,1,0,132,132, 132,132,180,180,204,204,132,132,6,10,10,8,1,0,132,132, 72,72,48,48,72,72,132,132,7,10,10,8,1,0,130,130, 68,68,40,16,16,16,16,16,6,10,10,8,1,0,252,4, 4,8,16,32,64,128,128,252,3,12,12,8,4,255,224,128, 128,128,128,128,128,128,128,128,128,224,6,10,10,8,1,0, 128,128,64,32,32,16,16,8,4,4,3,12,12,8,1,255, 224,32,32,32,32,32,32,32,32,32,32,224,6,3,3,8, 1,9,48,72,132,7,1,1,8,1,255,254,3,3,3,8, 2,10,128,64,32,6,8,8,8,1,0,120,132,4,124,132, 132,140,116,6,11,11,8,1,0,128,128,128,184,196,132,132, 132,132,196,184,6,8,8,8,1,0,120,132,128,128,128,128, 132,120,6,11,11,8,1,0,4,4,4,116,140,132,132,132, 132,140,116,6,8,8,8,1,0,120,132,132,252,128,128,132, 120,5,11,11,8,1,0,24,32,32,32,248,32,32,32,32, 32,32,6,11,11,8,1,254,4,116,136,136,136,112,64,120, 132,132,120,6,11,11,8,1,0,128,128,128,184,196,132,132, 132,132,132,132,5,11,11,8,2,0,32,32,0,96,32,32, 32,32,32,32,248,5,13,13,8,1,254,8,8,0,24,8, 8,8,8,8,8,8,144,96,6,10,10,8,1,0,128,128, 136,144,160,192,160,144,136,132,5,10,10,8,2,0,96,32, 32,32,32,32,32,32,32,248,7,8,8,8,1,0,236,146, 146,146,146,146,146,146,6,8,8,8,1,0,184,196,132,132, 132,132,132,132,6,8,8,8,1,0,120,132,132,132,132,132, 132,120,6,10,10,8,1,254,184,196,132,132,132,132,196,184, 128,128,6,10,10,8,1,254,116,140,132,132,132,132,140,116, 4,4,6,8,8,8,1,0,184,196,132,128,128,128,128,128, 6,8,8,8,1,0,120,132,128,96,24,4,132,120,5,10, 10,8,1,0,32,32,248,32,32,32,32,32,32,24,6,8, 8,8,1,0,132,132,132,132,132,132,140,116,6,8,8,8, 1,0,132,132,132,72,72,72,48,48,7,8,8,8,1,0, 130,146,146,146,146,146,146,108,6,8,8,8,1,0,132,132, 72,48,48,72,132,132,6,10,10,8,1,254,132,132,132,132, 132,76,52,4,4,120,6,8,8,8,1,0,252,4,8,16, 32,64,128,252,3,12,12,8,3,255,96,128,128,64,64,128, 128,64,64,128,128,96,1,14,14,8,4,254,128,128,128,128, 128,128,128,128,128,128,128,128,128,128,3,12,12,8,2,255, 192,32,32,64,64,32,32,64,64,32,32,192,7,3,3,8,1,8, 98,146,140,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, 0,115,209,202,16,75,209,202,16,115,223,128, 0,0,1,128,0,0,1,128,0,85,85, //р 0xa0 6,10,10,8,1,254, 248,132,132,132,132,248,128,128,128,128, 6,8,8,8,1,0,120, 132,128,128,128,128,132,120, 7,8,8,8,1,0,254, 16,16,16,16,16,16,16, 6,10,10,8,1,254, 132,132,72,72,48,48,32,32,64,192, 7,10,10,8,1,255, 16,16,124,146,146,146,146,124,16,16, 6,8,8,8,1,0,132, 132,72,48,48,72,132,132, 7,10,10,8,1,254, 132,132,132,132,132,132,132,254,2,2, 6,8,8,8,1,0,132, 132,132,132,252,4,4,4, 7,8,8,8,1,0,146, 146,146,146,146,146,146,254, 8,10,10,8,0,254, 146,146,146,146,146,146,146,255, 1,1,7,8,8,8, 1,0,224,32,32,60,34,34,34,60, 6,8,8,8,1,0, 132,132,132,228,148,148,148,228, 6,8,8,8,1,0, 128,128,128,248,132,132,132,248, 6,8,8,8,1,0, 112,136,4,124,4,4,136,112, 6,8,8,8,1,0, 152,164,164,228,164,164,164,152, 6,8,8,8,1,0, 124,132,132,132,124,36,68,132, //я 0xaf //А 6,10,10,8,1,0, 48,72,72,132,132,132,252,132,132,132, 6,10,10,8,1,0, 248,128,128,128,248,132,132,132,132,248, 6,10,10,8,1,0, 248,132,132,132,248,132,132,132,132,248, 6,10,10,8,1,0, 252,128,128,128,128,128,128,128,128,128, 8,12,12,8,0,254, 14,18,18,18,34,34,34,66,66,255,129,129, 6,10,10,8,1,0, 252,128,128,128,248,128,128,128,128,252, 7,10,10,8,1,0, 146,146,84,84,56,56,84,84,146,146, 6,10,10,8,1,0, 120,132,4,4,120,8,4,4,132,120, 6,10,10,8,1,0, 132,140,140,148,148,164,164,196,196,132, 6,13,13,8,1,0, 72,48,0,132,140,140,148,148,164,164,196,196,132, 6,10,10,8,1,0, 128,140,144,160,192,192,160,144,136,132, 6,10,10,8,1,0, 60,36,36,36,36,36,36,68,68,132, 6,10,10,8,1,0, 132,132,204,204,180,180,132,132,132,132, 6,10,10,8,1,0, 132,132,132,132,252,132,132,132,132,132, 6,10,10,8,1,0, 120,132,132,132,132,132,132,132,132,120, 6,10,10,8,1,0, 252,132,132,132,132,132,132,132,132,132, 6,10,10,8,1,0, 248,132,132,132,248,128,128,128,128,128, 6,10,10,8,1,0, 120,132,132,128,128,128,128,132,132,120, 7,10,10,8,1,0, 254,16,16,16,16,16,16,16,16,16, 7,10,10,8,1,0, 130,130,68,68,40,40,16,16,32,96, 7,11,11,8,1,0, 16,124,146,146,146,146,146,124,16,16,16, 6,10,10,8,1,0, 132,132,72,72,48,48,72,72,132,132, 7,12,12,8,1,254, 132,132,132,132,132,132,132,132,132,254,2,2, 6,10,10,8,1,0, 132,132,132,132,132,252,4,4,4,4, 7,10,10,8,1,0, 146,146,146,146,146,146,146,146,146,254, 8,12,12,8,0,254, 146,146,146,146,146,146,146,146,146,255,1,1, 7,10,10,8,1,0, 224,32,32,32,60,34,34,34,34,60, 6,10,10,8,1,0, 132,132,132,132,228,148,148,148,148,228, 6,10,10,8,1,0, 128,128,128,128,248,132,132,132,132,248, 6,10,10,8,1,0, 112,136,4,4,124,4,4,4,136,112, 6,10,10,8,1,0, 152,164,164,164,228,164,164,164,164,152, 6,10,10,8,1,0, 124,132,132,132,124,36,68,68,132,132, 6,8,8,8,1,0, 120,132,4,124,132,132,140,116, 6,12,12,8,1,0, 4,56,64,128,248,132,132,132,132,132,132,120, 6,8,8,8,1,0,248, 132,132,248,132,132,132,248, 6,8,8,8,1,0,252, 128,128,128,128,128,128,128, 7,9,9,8,1,255, 60,36,68,68,132,132,132,254,130, 6,8,8,8,1,0,120, 132,132,252,128,128,132,120, 7,8,8,8,1,0,146, 146,84,56,56,84,146,146, 6,8,8,8,1,0,120, 132,4,120,8,4,132,120, 6,8,8,8,1,0,140, 140,148,148,164,164,196,196, 6,11,11,8,1,0, 72,48,0,140,140,148,148,164,164,196,196, 6,8,8,8,1,0, 140,144,160,192,160,144,136,132, 6,8,8,8,1,0, 60,36,36,36,36,68,68,132, 6,8,8,8,1,0, 132,204,204,180,180,132,132,132, 6,8,8,8,1,0, 132,132,132,252,132,132,132,132, 6,8,8,8,1,0, 120,132,132,132,132,132,132,120, 6,8,8,8,1,0, 252,132,132,132,132,132,132,132};Проверка этим:
u8g.setFont(u8g_font_unifont_0_8); u8g.setPrintPos(0, 52); // позиция u8g.print("абвгдежзийклмноп"); //абвгдежзийклмноп рстуфхцчшщъыьэюя //АБВГДЕЖЗИКЛ МНОПРСТУФХ ЦЧШЩЪЫЬЭЮЯP.S. Скорее всего еще нарисую шрифт 5х7, этот был исправлен, кроме описанных изминений больше ничего не нужно, чтобы приминить изменения нужно сохранить файл и перезапустить Arduino IDE
Поздравляю - вернулись к тому с чего начали. 5х8 6х10(компильнутые в кодировке ISO8859-5) они уже есть в BDF. Там русские символы не в первой кодовой странице (коды символов больше 255). С автором u8glib я общался - библиотека может работать только с символами с кодом 0...255
ну вот чего вам не нравится? шрифт работает, без переделывания BDF, без его же доп загрузки, без изменения Arduino IDE, что ж еще не так? У меня семерка х64. Шрифты не доставлял, просто пишу в IDE русский текст и он выводится, без доп плясок с бубном.
точно выводится?
Ну проверте!!! могу видео снять, только верните настройки в IDE, а еще лучше в голую залейте
З.Ы. там в шрифте были строки перепутаны, если смотреть в шестнаднатиричной системе.
просто у меня из голой не выводилось, оттого и начал всю эту возьню.....
я изначально хотел вообще перерисовывать шрифт который хоть как-то из своего набора откликается на русский... пригляделся только не понял какая это кодировка и как нумеруется символ, с верху написан iso10646-1 но гугление пнуло меня в юникод... а там вообще ни на что не похоже... ну и начал плисать от того что есть, да и програмист с меня никакой, я до сих пор не разобрался с классами) фообще сидел отрисовывал картинку символа в экселе... так и разобрался что откуда.
Переделываю сейчас шрифт u8g_font_unifont_0_8 который по сути 16х16 в шрифт 5х7, все было хорошо до того момента как перехожу к следующему символу как только перерисовываю знак вопросы который является последним во второй строке в шестнадцатиричной таблице шрифта отрисовка почти правильная в исходнике по ссылке https://code.google.com/p/u8glib/wiki/fontgroupunifont смотреть u8g_font_unifont_0_8, до этого все нормально помогите разобраться как и что тут происходит, например непонятно назначение первых 23 значений до восклицательного знака. есть еще одно место оно подписано в коде ниже тоже после перерисовке все знаки после них сыпятся.
/* Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 Copyright: Capital A Height: 10, '1' Height: 10 Calculated Max Values w=16 h=16 x= 4 y=14 dx=16 dy= 0 ascent=14 len=32 Font Bounding box w=16 h=16 x= 0 y=-2 Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 Pure Font ascent =10 descent=-2 X Font ascent =11 descent=-2 Max Font ascent =14 descent=-2 */ #include "u8g.h" const u8g_fntpgm_uint8_t u8g_font_unifont_5_7[4233] U8G_FONT_SECTION("u8g_font_unifont_5_7") = { 0,16,16,0,254,10,1,231,3,213,32,255,254,14,254,11, 254,0,0,0,8,0,14,1,10,10,8,4,0, 128,128,128,128,128,128,128,0,128,128, //! 5,4,4,8,2,8,136,136,136, 136,6,10,10,8,1,0,36,36,36,252,72,72,252,144,144, 144,7,10,10,8,1,0,16,124,146,144,112,28,18,146,124, 16,7,10,10,8,1,0,98,148,148,104,16,16,44,82,82, 140,7,10,10,8,1,0,56,68,68,68,56,114,138,132,140, 114,1,4,4,8,4,8,128,128,128,128,3,12,12,8,3, 255,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, 8,2,255,128,64,64,32,32,32,32,32,32,64,64,128,7, 7,7,8,1,1,16,146,84,56,84,146,16,7,7,7,8, 1,1,16,16,16,254,16,16,16,2,4,4,8,3,254,192, 64,64,128,6,1,1,8,1,4,252,2,2,2,8,3,0, 192,192,6,10,10,8,1,0,4,4,8,16,16,32,32,64, 128,128,6,10,10,8,1,0,48,72,132,132,132,132,132,132, 72,48,5,10,10,8,2,0,32,96,160,32,32,32,32,32, 32,248,6,10,10,8,1,0,120,132,132,4,24,32,64,128, 128,252,6,10,10,8,1,0,120,132,132,4,56,4,4,132, 132,120,6,10,10,8,1,0,8,24,40,72,136,136,252,8, 8,8,6,10,10,8,1,0,252,128,128,128,248,4,4,4, 132,120,6,10,10,8,1,0,56,64,128,128,248,132,132,132, 132,120,6,10,10,8,1,0,252,4,4,8,8,8,16,16, 16,16,6,10,10,8,1,0,120,132,132,132,120,132,132,132, 132,120,6,10,10,8,1,0,120,132,132,132,124,4,4,4, 8,112,2,7,7,8,3,1,192,192,0,0,0,192,192,2, 9,9,8,3,255,192,192,0,0,0,192,64,64,128,5,9, 9,8,2,0,8,16,32,64,128,64,32,16,8,6,5,5, 8,1,2,252,0,0,0,252,5,9,9,8,1,0,128,64, 32,16,8,16,32,64,128, //Как только перерисовываю знак вопроса, то все символы после него сыпятся 6,10,10,8,1,0, 120,132,132,4,8,16,16,0,16,16, //? 6,10,10,8,1,0,56,68,148,172,164,164,164,156,64,60,6,10,10,8,1,0,48,72,72, 132,132,252,132,132,132,132,6,10,10,8,1,0,248,132,132, 132,248,132,132,132,132,248,6,10,10,8,1,0,120,132,132, 128,128,128,128,132,132,120,6,10,10,8,1,0,240,136,132, 132,132,132,132,132,136,240,6,10,10,8,1,0,252,128,128, 128,248,128,128,128,128,252,6,10,10,8,1,0,252,128,128, 128,248,128,128,128,128,128,6,10,10,8,1,0,120,132,132, 128,128,156,132,132,140,116,6,10,10,8,1,0,132,132,132, 132,252,132,132,132,132,132,5,10,10,8,2,0,248,32,32, 32,32,32,32,32,32,248,7,10,10,8,1,0,62,8,8, 8,8,8,8,136,136,112,6,10,10,8,1,0,132,136,144, 160,192,192,160,144,136,132,6,10,10,8,1,0,128,128,128, 128,128,128,128,128,128,252,6,10,10,8,1,0,132,132,204, 204,180,180,132,132,132,132,6,10,10,8,1,0,132,196,196, 164,164,148,148,140,140,132,6,10,10,8,1,0,120,132,132, 132,132,132,132,132,132,120,6,10,10,8,1,0,248,132,132, 132,248,128,128,128,128,128,7,11,11,8,1,255,120,132,132, 132,132,132,132,180,204,120,6,6,10,10,8,1,0,248,132, 132,132,248,144,136,136,132,132,6,10,10,8,1,0,120,132, 132,128,96,24,4,132,132,120,7,10,10,8,1,0,254,16, 16,16,16,16,16,16,16,16, 6,10,10,8,1,0, 132,132,132,132,132,132,132,132,132,120, 7,10,10,8,1,0, 130,130,130,68,68,68,40,40,16,16, 6,10,10,8,1,0, 132,132,132,132,180,180,204,204,132,132, 6,10,10,8,1,0, 132,132,72,72,48,48,72,72,132,132, 7,10,10,8,1,0, 130,130,68,68,40,16,16,16,16,16, 6,10,10,8,1,0, 252,4,4,8,16,32,64,128,128,252, // дальше закоментированны знаки которые идут после знака вопроса и заканчивая буквой Z. /* 5,8,8,6,1,0, 32,80,80,136,136,248,136,0, //A 5,8,8,6,1,0, 240,136,136,240,136,136,240,0, //B 5,8,8,6,1,0, 112,136,128,128,128,136,112,0, //C 5,8,8,6,1,0, 240,136,136,136,136,136,240,0, //D 5,8,8,6,1,0, 248,128,128,240,128,128,248,0, //E 5,8,8,6,1,0, 248,128,128,240,128,128,128,0, //F 5,8,8,6,1,0, 112,136,128,128,152,136,120,0, //G 5,8,8,6,1,0, 136,136,136,248,136,136,136,0, //H 5,8,8,6,1,0, 248,32,32,32,32,32,248,0, //I 5,8,8,6,1,0, 120,16,16,16,16,144,96,0, //J 5,8,8,6,1,0, 136,144,160,192,160,144,136,0, //K 5,8,8,6,1,0, 128,128,128,128,128,128,248,0, //L 5,8,8,6,1,0, 136,216,216,168,136,136,136,0, //M 5,8,8,6,1,0, 136,136,200,168,152,136,136,0, //N 5,8,8,6,1,0, 112,136,136,136,136,136,112,0, //O 5,8,8,6,1,0, 240,136,136,240,128,128,128,0, //P 5,8,8,6,1,0, 112,136,136,136,136,168,112,16, //Q 5,8,8,6,1,0, 240,136,136,240,160,144,136,0, //R 5,8,8,6,1,0, 112,136,128,112,8,136,112,0, //S 5,8,8,6,1,0, 248,32,32,32,32,32,32,0, //T 5,8,8,6,1,0, 136,136,136,136,136,136,112,0, //U 5,8,8,6,1,0, 136,136,136,80,80,32,32,0, //V 5,8,8,6,1,0, 136,136,168,168,168,216,80,0, //W 5,8,8,6,1,0, 136,136,80,32,80,136,136,0, //X 5,8,8,6,1,0, 136,136,80,80,32,32,32,0, //Y 5,8,8,6,1,0, 248,8,16,32,64,128,248,0, //Z*/ //если знаки с этой надписи до буквы "а", отрисовать заново то они отоброжаются но после них все сыпится 3,12,12,8,4,255,224,128,128,128,128,128,128,128,128,128,128,224, 6,10,10,8,1,0,128,128,64,32,32,16,16,8,4,4, 3,12,12,8,1,255,224,32,32,32,32,32,32,32,32,32,32,224, 6,3,3,8,1,9,48,72,132, 7,1,1,8,1,255,254, 3,3,3,8,2,10,128,64,32, 5,6,6,6,1,0, 112,8,120,136,112,0, //a 5,6,6,6,1,0, 128,128,240,136,240,0, //b 5,6,6,6,1,0, 112,136,128,136,112,0, //c 5,6,6,6,1,0, 8,8,120,136,120,0, //d 5,6,6,6,1,0, 112,136,248,128,112,0, //e 5,6,6,6,1,0, 32,64,224,64,64,0, //f 5,6,6,6,1,0, 112,136,120,8,112,0, //g 5,6,6,6,1,0, 128,128,240,136,136,0, //h 5,6,6,6,1,0, 128,0,128,128,128,0, //i 5,6,6,6,1,0, 32,0,112,32,32,0, //j 5,6,6,6,1,0, 144,160,192,160,144,0, //k 5,6,6,6,1,0, 192,64,64,64,224,0, //l 5,6,6,6,1,0, 136,216,168,136,136,0, //m 5,6,6,6,1,0, 176,200,136,136,136,0, //n 5,6,6,6,1,0, 112,136,136,136,112,0, //o 5,6,6,6,1,0, 240,136,240,128,128,0, //p 5,6,6,6,1,0, 112,136,120,8,8,0, //q 5,6,6,6,1,0, 184,192,128,128,128,0, //r 5,6,6,6,1,0, 120,128,112,8,240,0, //s 5,6,6,6,1,0, 64,224,64,64,96,0, //t 5,6,6,6,1,0, 136,136,136,136,112,0, //u 5,6,6,6,1,0, 136,136,80,80,32,0, //v 5,6,6,6,1,0, 136,136,168,168,80,0, //w 5,6,6,6,1,0, 136,80,32,80,136,0, //x 5,6,6,6,1,0, 136,136,120,8,112,0, //y 5,6,6,6,1,0, 248,16,32,64,248,0, //z 3,8,8,4,1,0, 32,64,64,128,64,64,32,0, //{ 1,8,8,2,1,0, 128,128,128,128,128,128,128,0, //| 3,8,8,4,1,0, 128,64,64,32,64,64,128,0, //} 7,3,3,8,1,8, 98,146,140,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, 0,115,209,202,16,75,209,202,16,115,223,128,0,0,1,128,0, 0,1,128,0,85,85, //р 0xa0 5,6,6,6,1,0, 240,136,240,128,128,0, //р 5,6,6,6,1,0, 112,136,128,136,112,0, //с 5,6,6,6,1,0, 248,32,32,32,32,0, //т 5,6,6,6,1,0, 136,136,120,8,112,0, //у 5,6,6,6,1,0, 112,168,168,112,32,0, //ф 5,6,6,6,1,0, 136,80,32,80,136,0, //х 5,6,6,6,1,0, 144,144,144,144,248,8, //ц 5,6,6,6,1,0, 136,136,120,8,8,0, //ч 5,6,6,6,1,0, 168,168,168,168,248,0, //ш 5,6,6,6,1,0, 168,168,168,168,248,8, //щ 5,6,6,6,1,0, 192,64,112,72,112,0, //ъ 5,6,6,6,1,0, 136,136,232,152,232,0, //ы 5,6,6,6,1,0, 128,128,240,136,240,0, //ь 5,6,6,6,1,0, 240,8,120,8,240,0, //э 5,6,6,6,1,0, 144,168,232,168,144,0, //ю 5,6,6,6,1,0, 120,136,120,72,136,0, //я //я 0xaf //А 5,8,8,6,1,0, 112,136,136,136,248,136,136,0, //А 5,8,8,6,1,0, 248,128,128,240,136,136,240,0, //Б 5,8,8,6,1,0, 240,136,136,240,136,136,240,0, //В 5,8,8,6,1,0, 248,136,128,128,128,128,128,0, //Г 6,8,8,7,1,0, 56,40,40,72,72,72,252,132, //Д 5,8,8,6,1,0, 248,128,128,240,128,128,248,0, //Е 5,8,8,6,1,0, 168,168,112,32,112,168,168,0, //Ж 5,8,8,6,1,0, 112,136,8,112,8,136,112,0, //З 5,8,8,6,1,0, 136,136,136,152,168,200,136,0, //И 5,8,8,6,1,0, 136,136,136,152,168,200,136,0, //И 5,8,8,6,1,0, 136,144,160,192,160,144,136,0, //К 5,8,8,6,1,0, 120,40,40,40,40,168,72,0, //Л 5,8,8,6,1,0, 136,216,168,168,136,136,136,0, //М 5,8,8,6,1,0, 136,136,136,248,136,136,136,0, //Н 5,8,8,6,1,0, 112,136,136,136,136,136,112,0, //О 5,8,8,6,1,0, 248,136,136,136,136,136,136,0, //П 5,8,8,6,1,0, 240,136,136,240,128,128,128,0, //Р 5,8,8,6,1,0, 112,136,128,128,128,136,112,0, //С 5,8,8,6,1,0, 248,32,32,32,32,32,32,0, //Т 5,8,8,6,1,0, 136,136,136,120,8,136,112,0, //У 5,8,8,6,1,0, 32,112,168,168,112,32,32,0, //Ф 5,8,8,6,1,0, 136,136,80,32,80,136,136,0, //Х 5,8,8,7,1,0, 136,136,136,136,136,136,252,4, //Ц 5,8,8,6,1,0, 136,136,136,120,8,8,8,0, //Ч 5,8,8,6,1,0, 168,168,168,168,168,168,248,0, //Ш 5,8,8,7,1,0, 168,168,168,168,168,168,252,4, //Щ 5,8,8,6,1,0, 192,64,64,112,72,72,112,0, //Ъ 6,8,8,8,1,0, 130,130,130,242,138,138,242,0, //Ы 5,8,8,6,1,0, 128,128,128,240,136,136,240,0, //Ь 5,8,8,6,1,0, 112,136,8,56,8,136,112,0, //Э 6,8,8,7,1,0, 152,164,164,228,164,164,152,0, //Ю 5,8,8,6,1,0, 120,136,136,120,40,72,136,0, //Я 5,6,6,6,1,0, 112,8,120,136,112,0, //а 5,6,6,6,1,0, 120,128,240,136,112,0, //б 5,6,6,6,1,0, 240,136,240,136,240,0, //в 5,6,6,6,1,0, 248,136,128,128,128,0, //г 5,6,6,6,1,0, 120,40,72,136,248,136, //д 5,6,6,6,1,0, 112,136,248,128,112,0, //е 5,6,6,6,1,0, 168,168,112,168,168,0, //ж 5,6,6,6,1,0, 112,136,48,136,112,0, //з 5,6,6,6,1,0, 136,152,168,200,136,0, //и 5,6,6,6,1,0, 136,152,168,200,136,0, //и 5,6,6,6,1,0, 144,160,192,160,144,0, //к 5,6,6,6,1,0, 120,40,40,168,72,0, //л 5,6,6,6,1,0, 136,216,168,136,136,0, //м 5,6,6,6,1,0, 136,136,248,136,136,0, //н 5,6,6,6,1,0, 112,136,136,136,112,0, //о 5,6,6,6,1,0, 248,136,136,136,136,0}; //п*/Если кому надо тут русские шрифты: http://arduino.ru/forum/programmirovanie/russkie-shrifty-dlya-biblioteki-u8glib
Доброго времени суток.
Я пытаюсь руссифицировать одну прошивку. Она использует собственные шрифты и простым подключением русских шрифтов дело не ограничивается. Каким образом можно совместить исходный шрифт (значки из него) с русским шрифтом?
Доброго времени суток.
Я пытаюсь руссифицировать одну прошивку. Она использует собственные шрифты и простым подключением русских шрифтов дело не ограничивается. Каким образом можно совместить исходный шрифт (значки из него) с русским шрифтом?
поищите поиском тему о русификации дисплея OLED 0.96, автор, по-моему andriano. Там подробно рассматриваются проблемы подмены шрифтов и добавления и замены символов, юникода и тд. Не уверен, правда. что там будет для вас готовое решение, так как автор многократно высказывался (в чем я его поддерживаю) - что в отсутсвии кириллицы никакой беды не видит. Каждый программист должен знать английский...
поищите поиском тему о русификации дисплея OLED 0.96, автор, по-моему andriano. Там подробно рассматриваются проблемы подмены шрифтов и добавления и замены символов, юникода и тд. Не уверен, правда. что там будет для вас готовое решение, так как автор многократно высказывался (в чем я его поддерживаю) - что в отсутсвии кириллицы никакой беды не видит. Каждый программист должен знать английский...
Вопрос не в программисте а в конечном пользователе.
А так, вопрос решен, нашел исходные BDF'ки которые использовались в том проекте.
поищите поиском тему о русификации дисплея OLED 0.96, автор, по-моему andriano.
Если рвсь о той теме, где я привожу библиотеку, то она называется "Кириллица на дисплее или что я нелаю не так". Но многократно приходилось отписываться и в других темах посвященных дисплеям вообще и кириллеце в частности.
Там подробно рассматриваются проблемы подмены шрифтов и добавления и замены символов, юникода и тд.
Скорее, особенностям кодировки UTF-8 родной для Aeduino IDE.
Не уверен, правда. что там будет для вас готовое решение, так как автор многократно высказывался (в чем я его поддерживаю) - что в отсутсвии кириллицы никакой беды не видит. Каждый программист должен знать английский...
Любопытно, что хотя я делал библиотеку специально ради поддержки кириллицы, сам ни разу кириллицей в этой библиотеке не воспользовался (кроме, разумеется, демонстрационного примера к библиотеке).
Но с другой стороны ZMan прав: ориентироваться нужно на пользователя.
Здравствуйте!
Подскажите пожалуйста как "прилепить" данный шрифт для дальнейшего использования?