Редактор шрифтов - может кому пригодится.

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить
Аватара пользователя
Unreal_2009
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Пн авг 06, 2012 10:39:53
Откуда: Москва

Редактор шрифтов - может кому пригодится.

Сообщение Unreal_2009 »

Доброго времени суток.
Вот приложение для генерации исходников шрифтов.
Если будет востребовано - буду развивать. Есть еще идея для картинок что то подобное сделать.
https://sourceforge.net/projects/xfontc ... rce=navbar

:roll:
uk8amk
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Re: Редактор шрифтов - может кому пригодится.

Сообщение uk8amk »

Идея хорошая, но ИМХО как-то неразумно по памяти и производительности шрифты хранить в таком формате:

Код: Выделить всё

GUI_FLASH  const unsigned char acMS_Sans_Serif8_42BDD_0046[13]={//символ с кодом 0046
________, // 0
________, // 1
_XXXXX__, // 2
_X______, // 3
_X______, // 4
_X______, // 5
_XXXX___, // 6
_X______, // 7
_X______, // 8
_X______, // 9
_X______, // 10
________, // 11
________, // 12
};


Сравните к примеру с символом на 8*5 точек:

Код: Выделить всё

 5, 0, 255, 9, 9, 1,//F=1,N=70, 'F'


Или вот к примеру тот же символ 'F', но с растром 21*32 точки(Arial, Высота 30) и сжатием RLE(размер кадра 32 бит):

Код: Выделить всё

 21, 2, 0, 0, 0, 0, 4, 254, 255, 255, 63, 13, 30, 224, 1, 0, 2, 30, 0, 0, 0,//F=1,N=70, 'F'
Аватара пользователя
Unreal_2009
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Пн авг 06, 2012 10:39:53
Откуда: Москва

Re: Редактор шрифтов - может кому пригодится.

Сообщение Unreal_2009 »

Идея хорошая, но ИМХО как-то неразумно по памяти и производительности шрифты хранить в таком формате:
Или вот к примеру тот же символ 'F', но с растром 21*32 точки(Arial, Высота 30) и сжатием RLE(размер кадра 32 бит):

Код: Выделить всё

 21, 2, 0, 0, 0, 0, 4, 254, 255, 255, 63, 13, 30, 224, 1, 0, 2, 30, 0, 0, 0,//F=1,N=70, 'F'


сорри.
Зыбыл сказать что надо еще хедер с дефайнами использовать.
Во вложении

Например
#define ________ 0x00
#define _______X 0x01
#define _X_X_X_X 0x55
#define XXXXXXXX 0xFF

и т.п.

Насчет производительностии самое то. + можно символы руками править легко прямо в исходнике. Хекс так не поправишь.

Насчет сжатия не уверен. Надо подумать.
Флэш памяти обычно достаточно, а вот скорость работы приложения критична
Если еще сжатия мутить - тут надо смотреть ....
Это ИМХО. Все зависит естественно от проекта и от железа.
Вложения
xfont_macro.h
дефайны для компиляции во встраиваемом приложении
(5.81 КБ) 176 скачиваний
uk8amk
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Re: Редактор шрифтов - может кому пригодится.

Сообщение uk8amk »

А ну тогда другое дело.

Насчёт памяти. У меня её обычно много не бывает. Т.к. при прочих равных условиях со сжатием фонтов и графики можно уместиться в более мелкий и соответсвенно дешевый камушек. Для единичного экземпляра проблема ничтожна, но для серии более актуальна.
Большие шрифты жмутся через RLE где-то на 30-40%. Надо будет как-нибудь опробовать алгоритм LZW. Он более сложен, но и степень сжатия должна быть выше. Правда и время на распаковку может быть больше.
Аватара пользователя
Unreal_2009
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Пн авг 06, 2012 10:39:53
Откуда: Москва

Re: Редактор шрифтов - может кому пригодится.

Сообщение Unreal_2009 »

Ну если вывод графики не ресурсоемкий(ну т.е. видео не надо показывать) сжатие это тема...
Предлагаю обсудить.
mrFox
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Пт сен 21, 2007 17:53:23
Откуда: Зарайск

Re: Редактор шрифтов - может кому пригодится.

Сообщение mrFox »

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

краткое описание:
программа для редактирования растровых шрифтов и черно-белых иконок
написанна с использованием Qt 4.8.1, файл для Linux (Ubuntu)
чтение/запись файлов *.h (нужно чтоб в файле был только шрифт)
позволяет гибко формировать массив данных под разные дисплейчики
полное описание см в readme

просьба котов потестить
пожелания по улучшению тоже приветствуются :solder:
Вложения
font_ed.rar
(103.73 КБ) 245 скачиваний
uk8amk
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Re: Редактор шрифтов - может кому пригодится.

Сообщение uk8amk »

Тогда и свой вариант выложу.
Используется для подготовки шрифтов для моих бегущих строк высотой 32 точки. Черно-белые картинки конвертирует до 256*256. Есть опция сжатия RLE.
Для шрифтов пакует байты вертикально, по столбцам, сверху-вниз.

На выходе файлы *.C .

Внимание. Добавляет одну лишнюю запятую в конце массивов.

Скачать можно здесь:
http://yadi.sk/d/Kuq8Xc8gDHaU7
Аватара пользователя
Unreal_2009
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Пн авг 06, 2012 10:39:53
Откуда: Москва

Re: Редактор шрифтов - может кому пригодится.

Сообщение Unreal_2009 »

Спасибо.
Потестим.
mrFox
Нашел транзистор. Понюхал.
Сообщения: 190
Зарегистрирован: Пт сен 21, 2007 17:53:23
Откуда: Зарайск

Re: Редактор шрифтов - может кому пригодится.

Сообщение mrFox »

ну так кто-нибудь потестил - а то качают и ни ответа ни привета
для затравки добавлю - программа позволяет гибко формировать массив данных
то есть байт растра горизонтально/вертикально + LSB или MSB, 8 вариантов обхода растра (слева-направо+сверху вниз, справа налево+сверху вниз и т.д.)
сама программа см. пост выше
Ответить

Вернуться в «Периферия»