Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: создание больших шрифтов на ЖКИ
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > Программирование
th-under
Здравствуйте!
Нужно увеличить шрифт, отображаемый на экране ЖКИ прибора. В проекте, написанном на IAR C, нашел два файла, отвечающие за размер шрифта. fnt8x8.h - "маленький" шрифт; fnt8x16.h - "большой" шрифт. Структура каждого из этих файлов представляет собой инициализацию двух массивов данных.

Например, для fnt8x8.h
const byte smallfontbits[ 2048 ] = {числа массива};
const byte smallfontpitches[ 256 ] = {числа массива};
extern const font_t smallfont;

А для fnt8x16.h
const byte largefontbits[4096] = {числа массива};
const byte largefontpitches[ 256 ] = {числа массива};
extern const font_t largefont;

Поэтому возникли следующие вопросы:
что означают эти массивы?
как создать больший шрифт?
может есть какие-то ссылки на создание таких файлов? гугл не помог.
Нужно создать шрифт больший, чем в fnt8x16.
К сожалению, сами файлы выложить не удалось. Почему-то возникла надпись "Ошибка Неудачная загрузка. Вам запрещено загружать такой тип файлов".
Спасибо!
bav
программ много google...
не совсем понятно какой у Вас ЖКИ и как описаны шрифты...
можно увеличить программно, для этого нужно немного изменить функцию вывода символов.
прикрепите файлы в архиве (таблицу символов и функцию вывода) - посмотрим что можно сделать
AHTOXA
Цитата(th-under @ Apr 20 2011, 14:31) *
Нужно создать шрифт больший, чем в fnt8x16.

Гляньте вот тут, может поможет. Там есть проект с функциями вывода шрифтов и ссылка на конвертер шрифтов. Можно создавать шрифт любого размера. Структура шрифта не совпадает, но имея пример вы легко измените функцию вывода под новый формат.
aaarrr
Цитата(th-under @ Apr 20 2011, 12:31) *
что означают эти массивы?

Первый - образ символов, второй - ширины, судя по всему.

Цитата(th-under @ Apr 20 2011, 12:31) *
как создать больший шрифт?

Для начала разберитесь с кодом, который эти шрифты использует. Во-первых, нужно установить формат данных, во-вторых, убедиться, что он поддерживает ширину символа больше 8.
th-under
Извиняюсь за столь поздний ответ!
Цитата
не совсем понятно какой у Вас ЖКИ и как описаны шрифты...

ЖКИ PG12864LRF; а вот как описаны шрифты, это я и сам хочу узнать rolleyes.gif
Прикрепил в архиве файлы таблицы и функции выводов текста.

Спасибо, AHTOXA за ссылку, посмотрю.
sergeeff
Там вроде шрифты аналогично устроены
th-under
sergeeff, спасибо!
Попробую и после праздников отпишусь sm.gif
Ya_Mike
Цитата(AHTOXA @ Apr 20 2011, 23:23) *
Гляньте вот тут, может поможет. Там есть проект с функциями вывода шрифтов и ссылка на конвертер шрифтов. Можно создавать шрифт любого размера. Структура шрифта не совпадает, но имея пример вы легко измените функцию вывода под новый формат.

У меня подобная же задача, как у топикстартера, только нужен шрифт высотой 8 пикселей. Скачал программу по ссылке, с помощью неё создал *.font файл на основе шрифта Terminal. Можете подсказать, как его использовать дальше? Просто обращаясь к нему с нужным смещением или как-то иначе? В ваших программах для контроллера дисплея нокиа используется уже некий готовый массив, это и есть этот файл? К сожалению методом "пробы" действовать не могу на данном этапе - определяюсь с архитектурой моей программы (придумывать свои шрифты или использовать что-то готовое).
AHTOXA
Цитата(Ya_Mike @ Jun 12 2011, 16:46) *
Скачал программу по ссылке, с помощью неё создал *.font файл на основе шрифта Terminal. Можете подсказать, как его использовать дальше?

Загрузите свой *.font, нажмите кнопку "export Font", создастся файл *.h, там и будет искомый массив байтов. Который используется далее в программе.
Ya_Mike
Цитата(AHTOXA @ Jun 13 2011, 17:37) *
Загрузите свой *.font, нажмите кнопку "export Font", создастся файл *.h, там и будет искомый массив байтов. Который используется далее в программе.

Спасибо, то, что надо!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.