Перейти к содержанию
    

Шрифты для маленьких экранов

В результате экспериментов с различными экранами возник вопрос, какой/какие шрифты лучше использовать для экранов с маленьким разрешением.

Например имея экран 48x84 можем использовать шрифты высотой 8 точек - 6 строк, 16 точек - 3 строки и 24 точки - две строки (при ширине символа 16 точек уместится только 5 символов).

Потыкавшись и преобразовав несколько типовых шрифтов из операционки (Arial, Times New Roman, Verdana и пр.) понял что не так просто получить удобоваримый шрифт для LCD дисплея.

Конечно для экрана разрешением >120 точек эта проблема не так актуальна, но даже в таком случае логичнее использовать полезное пространство экрана для других целей, нежели вывод красивых больших букв, которых в любом случае поместится меньше.

 

Интересует опыт использования шрифтов, и может полезные советы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте!

Гуглите dot matrix font.

Гугл оп такому запросу выдаёт редчайшую дичь - закос под точечный шрифт.

Беда в том, что конвертировать такие шрифты в код совсем не получается нормально, т.к. у них символ состоит из кучи белых и чёрных точек.

Получается вот такая лабуда:

Скрин конвертора

И это при размере шрифта 16, при меньшем размере просто получа.тся нечитаемые символы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гугл выдает целую массу точечных шрифтов на любой вкус, размер которых тоже варьируется.

Естественно, автоматом их без специального парсера не конвертируешь. Но он пишется за пару часов на питоне или в матлабе. Или на чем удобно.

На мой взгляд, хорошо сделать шрифт малого разрешения (так назовем) можно только вручную.

Либо взять готовый. На форуме такие темы поднимались и вроде как даже выкладывались какие-то шрифты.

 

А досовские олдскульные шрифты вас не устраивают?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гугл выдает целую массу точечных шрифтов на любой вкус, размер которых тоже варьируется.

Естественно, автоматом их без специального парсера не конвертируешь. Но он пишется за пару часов на питоне или в матлабе. Или на чем удобно.

На мой взгляд, хорошо сделать шрифт малого разрешения (так назовем) можно только вручную.

Либо взять готовый. На форуме такие темы поднимались и вроде как даже выкладывались какие-то шрифты.

 

А досовские олдскульные шрифты вас не устраивают?

Если-бы знать, как их можно использовать.

Теоретически наверно они-бы подошли.

Вручную да можно, но надо какую-то базу иметь от чего отталкиваться.

Я по этому и спросить здесь, что наверняка народ уже сталкивался. На тех-же ардуинах и много чём такие экраны используют.

Ну и хотелось сделать что-то скажем так, что радовало глаз.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

SG Bitmap Font Editor - вот такой программкой себе делал, все отлично ( из обычных шрифтов - в бинарник )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Интересует опыт использования шрифтов, и может полезные советы.

Graphics Services в Embedded расширении Altium-а содержит с десяток адаптированных фонтов и еще генератор для них.

 

Еще специально для часов с маленькими экранами есть проект HEXIWEAR в котором вот такие фонты: https://github.com/Indemsys/HEXIWEAR/blob/m...gui_resources.c

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть у меня ощущение, что на 48*84 дисплей (ну маленький он), шрифт как таковой не нужен, а будет достаточно "битмапчиков" с текстом и может быть даже, то что, хотелось написать, будет круче заменить пиктограммками.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть у меня ощущение, что на 48*84 дисплей (ну маленький он), шрифт как таковой не нужен, а будет достаточно "битмапчиков" с текстом и может быть даже, то что, хотелось написать, будет круче заменить пиктограммками.

Ну на самом деле шрифтом 5x8 вполне себе текст помещается, да и пункты меню можно нормально отобразить.

Да и подписи к выводимым данным неплохо смотрятся.

Да конечно в шрифте в 16 точек по вертикали символов помещается немного, но те-же цифры надо как-то отображать, если не текст.

Но и размерность неплохо указать.

Как-то же в нокиях пользовались и меню и даже кириллица там нормально была реализована.

Так что не совсем соглашусь.

Просто хотелось для себя сделать некую заготовку с парой -тройкой разных шрифтов и в дальнейшем просто использовать их вне зависимости от конкретного экрана.

 

Graphics Services в Embedded расширении Altium-а содержит с десяток адаптированных фонтов и еще генератор для них.

 

Еще специально для часов с маленькими экранами есть проект HEXIWEAR в котором вот такие фонты: https://github.com/Indemsys/HEXIWEAR/blob/m...gui_resources.c

Спасибо за информацию, оч интересный проектик. А на счёт альтиума - поковыряюсь.

 

SG Bitmap Font Editor - вот такой программкой себе делал, все отлично ( из обычных шрифтов - в бинарник )

Вопрос в том, какие именно шрифты и какого размера (кегля) конвертировать. Понятно что можно любой шрифт взять. Но большинство шрифтов нормально конвертятся (не в бинарник правда а в шестнадцатиричный код для программы) только начиная с размера 16 и больше. Ниже получаются кривизна на кривизне или просто смотрится убого.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, 5*8 рисуется Paint-ом в обеденный перерыв… (;

У вас видеопамять дисплея адресуется точка-в-точку или по-байтово?

Изменено пользователем Obam

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для LCD 101х64 я использовал для преобразования шрифтов прогу TheDotFactory. Шрифты брал растровые из винды, а также скачивал. Разные размером от 11 и меньше - вполне нормально смотрятся.

 

только начиная с размера 16 и больше. Ниже получаются кривизна на кривизне или просто смотрится убого.

Вам тут уже несколько раз посоветовали - не используйте векторные шрифты!. Используйте растровые и будет всё ок.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, 5*8 рисуется Paint-ом в обеденный перерыв… (;

У вас видеопамять дисплея адресуется точка-в-точку или по-байтово?

Побайтово. По этому получается что и шрифты кратно 8 имеет смысл только использовать, иначе бессмысленное пустое пространство остаётся.

Ну либо надо мудрить чтобы отрисовать например 10 или 12 шрифт, чтобы не затереть, что уже на той-же строке отрисовано в верхней/нижней части. То есть каким-то образом считывать состояние регистров видео памяти прежде чем писать.

Ну и плюс сама отрисовка тоже будет не тривиальной, т.к. например в первой строке придётся отрисовывать сверху, а во второй уже с середины строки. В общем это уже гораздо сложнее, по этому такие способы особо и не применяются.

 

 

Для LCD 101х64 я использовал для преобразования шрифтов прогу TheDotFactory. Шрифты брал растровые из винды, а также скачивал. Разные размером от 11 и меньше - вполне нормально смотрятся.

Вам тут уже несколько раз посоветовали - не используйте векторные шрифты!. Используйте растровые и будет всё ок.

А как определить, что шрифт растровый? Я видимо в этом вопросе дилетант, но не нашёл признаков растровости в шрифтах операционки (Win).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...