Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Font Viewer, как показать шрифт попиксельно 
:(
    Опции темы
maloicds
Дата 20.1.2015, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 20.10.2009
Где: Москва

Репутация: нет
Всего: нет



Добрый день.

Возникла проблема: для программирования мк необходимо создать русский шрифт. В ручную рисовать муторное занятие.
Обьясню почему:

вот так представлена буква "A"в коде 
Код

0x00, 0x80, 0xE0, 0xF8, 0xFE, 0x1E, 0xFE, 0xF8, 0xE0, 0x80, 0x00, 0x00, 0x1C, 0x1F, 0x0F, 0x07, 0x06, 0x06, 0x06, 0x07, 0x0F, 0x1F, 0x1C, 0x10


а вот так она выглядит если эти значения предствать в другом виде
http://saveimg.ru/show-image.php?id=78356c...777cbffe6e24b6e

Необходимо отобразить любой символ из шрифта в stringgrid'е например, а дальше по состоянию закрашеных ячеек будет сформирован код для мк.

Например вот так
http://saveimg.ru/show-image.php?id=dfa007...5b31b644e0e2f38

Куда копать не знаю :(

PM MAIL   Вверх
Alexeis
Дата 20.1.2015, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 55
Всего: 459



maloicds, ну перво-наперво нужно отрисовать весь алфавит на битмапе (объект класса TBitMap) (Canvas.TextOut и все такое)
Если градации серого не нужно, то рекомендую использовать формат  pf1Bit (pixelformat)
 Далее при помощи функций Canvas.TextHeight(); и Canvas.TextWidth(); битмапа определить ширину и высоту нужного символа, а также смещение на картинке.
Используя функцию ScanLine получить доступ к строкам битмапа. Но нужно учитывать что 1 пиксел это 1 бит в формате pf1Bit . Т.е. в одном байте будет 8 пикселов. 
И остается только байты сконвертировать в строки добавив 0x и запятые . Функцией IntToHex . Строку сохраняем в текстовый файл, файл в исходник.
  По всем этим функциям есть куча примеров тут на форуме. При использовании моноширинного шрифта код значительно упрощается.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
maloicds
Дата 20.1.2015, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 37
Регистрация: 20.10.2009
Где: Москва

Репутация: нет
Всего: нет



Alexeis, спасибо, буду пробовать!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.1169 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.