MAX7219 длина текста в пикселах
- Войдите на сайт для отправки комментариев
Пт, 30/08/2019 - 14:50
Как можно рассчитать ширину текста в пикселах используемого шрифта?
String text = ("nop"); 15 пикселей в ширину без учета межбуквенных пробелов
MD_MAX72XX::fontType_t fontBG[] PROGMEM = { 5, 0x7c, 0x08, 0x04, 0x04, 0x78, // 110 - 'n' 5, 0x38, 0x44, 0x44, 0x44, 0x38, // 111 - 'o' 5, 0xfc, 0x18, 0x24, 0x24, 0x18, // 112 - 'p'
Как можно рассчитать ширину текста в пикселах используемого шрифта?
Это зависит от того, какой шрифт - моноширинный или пропорциональный. Для моноширинного просто число символов в строке умноженное на ширину одного символа. Насколько я помню, в скетче бегущей строки на MAX7219 именно такой шрифт.
Для пропорционального - для каждого символа загрузить из матрицы шрифта соответвующую букву и посчитать.
К сожалению непропорциональный, так бы длину на пикселы перемножл и ЗБС.
Не могу разобраться, как по символу вытащить длину из матрицы.
Не могу разобраться, как по символу вытащить длину из матрицы.
Вы разобрались, как закодированы буквы в шрифте? судя по вашему примеру, первая цифра "5" в каждой строке и есть ширина символа
Не то, что разобрался, сам кодировал.
Не пойму как эту цифру достать у символа у 112 символа 'P'
Не пойму как эту цифру достать у символа у 112 символа 'P'
посмотрите в коде, как достается сама буква , сделайте по аналогии
Если пришел на форм спросить, наверно же смотрел.
Не делать же механический перебор всех 111 символов, чтобы узнать длину 112.
Не делать же механический перебор всех 111 символов, чтобы узнать длину 112.
Если у фонта нет индекса, то только перебором и делать, другого пути нет.
Если пришел на форм спросить, наверно же смотрел.
Не делать же механический перебор всех 111 символов, чтобы узнать длину 112.
Вы хотите сказать, что для того чтобы добраться до буквы P там перебираются все предыдущие буквы?
Что ж это заформат шрифта такой?
В библиотеке MAX72xx предложен один формат шрифта
Вы хотите сказать, что для того чтобы добраться до буквы P там перебираются все предыдущие буквы?
Что ж это заформат шрифта такой?
Евгений, если это пропорциональный шрифт без индекса, то так и есть - чтобы добратся до очередной буквы, надо просмотреть все предыдущие. Но такой формат крайне редко встречается, обычно без индекса кодируются только моноширинные фонты.
Нормально .. нормально. Кто программы пишет , тот в цирке не смеется. Один клоун написал свой формат, другой клоун не может решить, что делать. Или использовать клоунаду предыдущего клоуна добавив свою репризу поиска длины текста. Или же все же решиться создать свой оригинальный номер. Но похоже слабоват для этого. Пришлось ему писать на цирковой форум и искать других клоунов.