|
|
  |
Шрифты для маленьких экранов, Подскажите какие шрифты лучше использовать |
|
|
|
May 28 2017, 17:16
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 7-03-11
Из: Владимир
Пользователь №: 63 445

|
В результате экспериментов с различными экранами возник вопрос, какой/какие шрифты лучше использовать для экранов с маленьким разрешением. Например имея экран 48x84 можем использовать шрифты высотой 8 точек - 6 строк, 16 точек - 3 строки и 24 точки - две строки (при ширине символа 16 точек уместится только 5 символов). Потыкавшись и преобразовав несколько типовых шрифтов из операционки (Arial, Times New Roman, Verdana и пр.) понял что не так просто получить удобоваримый шрифт для LCD дисплея. Конечно для экрана разрешением >120 точек эта проблема не так актуальна, но даже в таком случае логичнее использовать полезное пространство экрана для других целей, нежели вывод красивых больших букв, которых в любом случае поместится меньше.
Интересует опыт использования шрифтов, и может полезные советы.
|
|
|
|
|
May 28 2017, 19:34
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 7-03-11
Из: Владимир
Пользователь №: 63 445

|
Цитата(x736C @ May 28 2017, 21:16)  Здравствуйте! Гуглите dot matrix font. Гугл оп такому запросу выдаёт редчайшую дичь - закос под точечный шрифт. Беда в том, что конвертировать такие шрифты в код совсем не получается нормально, т.к. у них символ состоит из кучи белых и чёрных точек. Получается вот такая лабуда: Скрин конвертораИ это при размере шрифта 16, при меньшем размере просто получа.тся нечитаемые символы.
|
|
|
|
|
May 28 2017, 19:59
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 7-03-11
Из: Владимир
Пользователь №: 63 445

|
Цитата(x736C @ May 28 2017, 22:51)  Гугл выдает целую массу точечных шрифтов на любой вкус, размер которых тоже варьируется. Естественно, автоматом их без специального парсера не конвертируешь. Но он пишется за пару часов на питоне или в матлабе. Или на чем удобно. На мой взгляд, хорошо сделать шрифт малого разрешения (так назовем) можно только вручную. Либо взять готовый. На форуме такие темы поднимались и вроде как даже выкладывались какие-то шрифты.
А досовские олдскульные шрифты вас не устраивают? Если-бы знать, как их можно использовать. Теоретически наверно они-бы подошли. Вручную да можно, но надо какую-то базу иметь от чего отталкиваться. Я по этому и спросить здесь, что наверняка народ уже сталкивался. На тех-же ардуинах и много чём такие экраны используют. Ну и хотелось сделать что-то скажем так, что радовало глаз.
|
|
|
|
|
May 28 2017, 20:05
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 7-03-11
Из: Владимир
Пользователь №: 63 445

|
Цитата(scifi @ May 28 2017, 22:44)  Да полезная ссылочка. Спасибо!
|
|
|
|
|
May 28 2017, 21:53
|
Участник

Группа: Участник
Сообщений: 34
Регистрация: 17-03-17
Пользователь №: 95 867

|
SG Bitmap Font Editor - вот такой программкой себе делал, все отлично ( из обычных шрифтов - в бинарник )
|
|
|
|
|
May 29 2017, 08:45
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 7-03-11
Из: Владимир
Пользователь №: 63 445

|
Цитата(Obam @ May 29 2017, 11:23)  Есть у меня ощущение, что на 48*84 дисплей (ну маленький он), шрифт как таковой не нужен, а будет достаточно "битмапчиков" с текстом и может быть даже, то что, хотелось написать, будет круче заменить пиктограммками. Ну на самом деле шрифтом 5x8 вполне себе текст помещается, да и пункты меню можно нормально отобразить. Да и подписи к выводимым данным неплохо смотрятся. Да конечно в шрифте в 16 точек по вертикали символов помещается немного, но те-же цифры надо как-то отображать, если не текст. Но и размерность неплохо указать. Как-то же в нокиях пользовались и меню и даже кириллица там нормально была реализована. Так что не совсем соглашусь. Просто хотелось для себя сделать некую заготовку с парой -тройкой разных шрифтов и в дальнейшем просто использовать их вне зависимости от конкретного экрана. Цитата(AlexandrY @ May 29 2017, 08:21)  Graphics Services в Embedded расширении Altium-а содержит с десяток адаптированных фонтов и еще генератор для них. Еще специально для часов с маленькими экранами есть проект HEXIWEAR в котором вот такие фонты: https://github.com/Indemsys/HEXIWEAR/blob/m...gui_resources.cСпасибо за информацию, оч интересный проектик. А на счёт альтиума - поковыряюсь. Цитата(ltDrakon @ May 29 2017, 00:53)  SG Bitmap Font Editor - вот такой программкой себе делал, все отлично ( из обычных шрифтов - в бинарник ) Вопрос в том, какие именно шрифты и какого размера (кегля) конвертировать. Понятно что можно любой шрифт взять. Но большинство шрифтов нормально конвертятся (не в бинарник правда а в шестнадцатиричный код для программы) только начиная с размера 16 и больше. Ниже получаются кривизна на кривизне или просто смотрится убого.
|
|
|
|
|
May 29 2017, 09:01
|
Участник

Группа: Участник
Сообщений: 49
Регистрация: 7-03-11
Из: Владимир
Пользователь №: 63 445

|
Цитата(Obam @ May 29 2017, 11:49)  Ну, 5*8 рисуется Paint-ом в обеденный перерыв… (; У вас видеопамять дисплея адресуется точка-в-точку или по-байтово? Побайтово. По этому получается что и шрифты кратно 8 имеет смысл только использовать, иначе бессмысленное пустое пространство остаётся. Ну либо надо мудрить чтобы отрисовать например 10 или 12 шрифт, чтобы не затереть, что уже на той-же строке отрисовано в верхней/нижней части. То есть каким-то образом считывать состояние регистров видео памяти прежде чем писать. Ну и плюс сама отрисовка тоже будет не тривиальной, т.к. например в первой строке придётся отрисовывать сверху, а во второй уже с середины строки. В общем это уже гораздо сложнее, по этому такие способы особо и не применяются. Цитата(jcxz @ May 29 2017, 11:57)  Для LCD 101х64 я использовал для преобразования шрифтов прогу TheDotFactory. Шрифты брал растровые из винды, а также скачивал. Разные размером от 11 и меньше - вполне нормально смотрятся. Вам тут уже несколько раз посоветовали - не используйте векторные шрифты!. Используйте растровые и будет всё ок. А как определить, что шрифт растровый? Я видимо в этом вопросе дилетант, но не нашёл признаков растровости в шрифтах операционки (Win).
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|