есть 2 экзампла для i2c oled 128x32 - плеер с иконками - вывод графиками синус и ЭКГ (не встроена пока в gfx библиотеку)
40 KiB
matrixFont — история версий
| Параметр | Описание |
|---|---|
| Приложение | matrixFont |
| Тема | Приложение для создания и редактирования растровых шрифтов, используемых в проектах программного обеспечения встраиваемых систем с графическим дисплеем |
| Автор | Riva |
| Лицензия | FreeBSD License, модифицированная |
| Начало разработки | 2015 |
| Релиз | 2017.07.04 - [v0.0.0.39](#v00039-—-тестовый релиз) (предварительный) |
| 2021.08.27 - v1.1.0.52 (первый публичный) | |
| 2023.08.15 - v1.2.0.55 | |
| 2024.01.24 - v1.3.0.56 | |
| 2024.02.12 - v1.4.7.64 | |
| 2024.02.12 - v2.0.0.81 |
[TOC]
V0.0
v0.0.0.1 2015
- Вплоть до сборки 0.0.0.9 автор так увлекся созданием приложения, что начисто забил на ведение лога разработки
v0.0.0.9 2016.06.08
-
Исправлено функционирование отмены/повтора
-
Добавлено колонку "символ" в навигатор
-
Визуальные правки навигатора
- план: сделать один битмап, а в объектах символов использовать его через указатель
v0.0.0.10 2016.06.29
- Сделано один битмап, который используется через указатель
- ControlBar заменен на CoolBar
- Добавлены эффекты, применяемые ко всему набору символов
- план: сделать формат файла для сохранения шрифта
- план: сделать предпросмотр текста шрифтом
v0.0.0.11 2016.07.25
- Добавлен функционал в диалог создания шрифта
- Добавлено окно свойств шрифта
v0.0.0.12 2016.10.12
- Добавлено сохранение в файл
- Добавлена загрузка из файла
- Добавлена генерация кода си (пробная версия)
- Переработан интерфейс окна генератора
- план: доработать генерацию кода
- план: реализовать графическое отображение формата генерации кода
- план: добавить предупреждения при несохраненном измененном шрифте
v0.0.0.13 2016.10.13
- Доработана генерация кода си (пробная версия)
v0.0.0.14 2016.10.22
-
Доработана генерация кода си пропорционального шрифта
-
Доработаны элементы вывода генератора
-
Добавлен выбор языка комментариев сгенерированного кода
-
Доработан внешний вид (привязки) элементов окон "новый" и "свойства"
-
Добавлена статусная строка
-
Добавлен функционал кнопок в окне генератора
-
Добавлена кнопка "свойства" на панель быстрого доступа
- план: исправить отмену действия в загруженном файле
v0.0.0.15 2016.10.24
- Доработана генерация кода си пропорционального шрифта (ширина пустых символов)
- Исправлена ошибка при отмене действия в загруженном или заново созданном файле
- план: сделать импорт шрифта из системы в приложение
- план: исправить генерацию кода (запятая в конце массива)
- план: добавить окно подтверждения при закрытии несохраненного шрифта
v0.0.0.16 2016.12.08
- Исправлено генерацию кода (запятая в конце массива)
- Добавлено окно подтверждения при закрытии несохраненного шрифта
- Изменены кнопки в окнах свойств и создания нового шрифта на TBitBtn
- Добавлен модуль для чтения информации о версии приложения и пр.
- план: добавить в файл сведения о версии приложения
- план: добавить в файл сведения о версии формата файла
- план: добавить поле ввода префикса для дефайнов в генераторе
v0.0.0.17 2016.12.23
- Исправлена выдача подтверждения при несохраненном шрифте
- Переработан Action создания нового шрифта
- Добавлено в формат файла сведения о версии приложения, создавшего шрифт
- Добавлено вывод в окне свойств версии приложения, создавшего шрифт
- В генераторе переработано выравнивание тела макросов (табул. по 4)
- план: добавить масштаб символа "вписанный"
- план: добавить обработку средней кнопки мыши (инверсия пикселя)
v0.0.0.18 2017.01.19
-
Добавлено масштаб символа "вписанный"
-
Исправлен код формирования изображения символа (визуальный баг при отключенной сетке)
- план: сделать поиск символа в таблице по названию и по коду
v0.0.0.19 2017.01.25
- Добавлено импорт шрифта из системы в приложение
- Исправлены небольшие ошибки
- Изменен интерфейс: перенесена одна из панелей на правую сторону
- план: сделать выбор диапазона вывода в генераторе кода
- план: добавить инструменты для рисования: линии, прямоугольник, эллипс и т.п.
v0.0.0.20 2017.01.27
- Добавлен счетчик кадров в секунду (текущее значение FPS)
- Добавлено таймер для отрисовки символа (макс. число FPS: 100)
- Добавлено обработку средней кнопки мыши (инверсия пикселя)
- Сделано поиск символа в таблице по названию и по коду
v0.0.0.21 2017.02.01
- Добавлено предпросмотр текста шрифтом (альфа)
- план: устранить баг при рисовании символа на краях
- план: добавить инструмент "заливка"
v0.0.0.22 2017.02.02
- Доработано предпросмотр текста шрифтом: многострочный текст, проп/моно
- Переработана часть кода генератора кода символа (функционал не изменился)
- план: доработать предпросмотр текста шрифтом
- план: исправить баг с отменой всех изменений в загруженном шрифте (отменяется загрузка)
v0.0.0.23 2017.02.03
- Доработано предпросмотр текста шрифтом (дизайн)
- Добавлено "примагничивание" окна предпросмотра к главному окну
- Исправлено баг с отменой всех изменений в загруженном шрифте (отменяется загрузка)
- Устранен баг при рисовании символа на краях
- план: добавить масштабирование и индикатор масштаба в окно импорта шрифта
- план: добавить отмену/повтор изменений для всего шрифта
- план: продумать вариант отображения сетки символов (вместо навигатора в виде списка)
v0.0.0.24 2017.02.21
- Создан GUI для изменения размеров холста символов шрифта
- Убраны лишние пункты меню (добавление/удаление строк/столбцов в шрифте)
v0.0.0.25 2017.02.25
- Реализовано изменение размеров холста символов шрифта
- план: переработать принцип записи истории изменений (некорректная работа при изменении размеров холста) [изменена концепция: сброс истории правок]
v0.0.0.26 2017.03.01
- Доработано окно предпросмотра (переработан GUI)
- Реализовано функцию оптимизации размера холста символов шрифта
- Реализовано выбор диапазона вывода в генераторе кода
v0.0.0.27 2017.03.02
- Реализовано изменение диапазона символов шрифта
- Переработаны функции сдвига, прижатия, отражения (универсализация)
v0.0.0.28 2017.03.03
- Реализовано операции с буфером обмена (копировать/вырезать/вставить)
v0.0.0.29 2017.03.06
- Переработан интерфейс окна генератора
- Добавлен диалог сохранения для экпорта изображения предпросмотра
- Добавлен диалог сохранения для экпорта файла кода
v0.0.0.30 2017.03.18
- Переделан интерфейс окна оптимизации (равномерное заполнение боксов)
- Исправлена ошибка при работе с буфером обмена
- Изменен формат файла шрифта (побитовая запись, размер уменьшен в ~8 раз)
- план: добавить в окно предпросмотра кнопку выравнивания ширины окна по главному
- план: добавить проверку имени шрифта (нелатинские символы в генерируем коде)
v0.0.0.31 2017.04.04
- Переделан интерфейс окон создания, свойств, импорта, оптимизации, изменения диапазона, изменения размера, подтверждения
- Добавлено окно "О программе"
- Добавлена звездочка в заголовок, если файл изменен и не сохранен
- Добавлена проверка диапазонов символов в окнах создания и изменения диапазона
- Добавлена кнопка "Закрыть" на панель поиска
v0.0.0.32 2017.04.06
-
Добавлено окно настроек (тестовая версия)
-
Добавлены названия непечатных символов в навигатор и в код
- план: сделать сохранение настроек и параметров приложения
v0.0.0.33 2017.04.07
-
Доработано окно настроек
-
Добавлено сохранение настроек и параметров приложения
- план: добавить список последних открытых файлов
v0.0.0.34 2017.04.09
- Удален таймер из формы предпросмотра, переработана логика обновления навигатора, предпросмотра
- Исправлена ошибка вывода символов предпросмотра, не входящих в текущий шрифт
v0.0.0.35 2017.05.16
- Исправлено генерацию кода (транслитерация кирилличного названия шрифта)
- Сохранение списка последних открытых файлов (тестовый режим)
v0.0.0.36 2017.05.17
- Сохранение списка последних открытых файлов
- план: добавить опции расположения окон на экране (надо?)
- план: добавить возможность локализации
- план: добавить возможность показать/скрыть панели быстрого доступа
- план: добавить эффект центрирования символа (по вертикали и горизонтали)
- план: добавить создание пользовательских макросов (список операций для выполнения по вызову макроса)
- план: добавить окно посимвольной статистики шрифта (кол-во пустых строк/столбцов, фактическая высота/ширина и т.п.)
- план: добавить панель быстрого доступа для эффектов всего шрифта
v0.0.0.37 2017.05.19
- Исправлен визуальный баг при сбросе настроек (вкладка "Навигатор")
- Добавлены настройки отображения превью символа в навигаторе
v0.0.0.38 2017.07.01
- Исправлен визуальный баг при сбросе настроек и выходе без применения изменений
- Добавлено новое визуальное оформление (набор иконок) и соответствующая настройка
- Добавлены кнопки масштаба и контекстное меню в окно предпросмотра
v0.0.0.39 2017.07.04
- Добавлено сохранение текста предпросмотра в файл настроек
- Новое визуальное оформление (набор иконок) сделано полностью
- Рефакторинг частей кода и конструкции форм
v0.0.0.39 — тестовый релиз
Предварительный релиз. Работоспособная версия в процессе тестирования.
v0.0.0.40 2021.07.16
- Убран выбор стиля иконок и иконки Iconizer
- Модернизация окна "О программе"
- Автовыравнивание ширины столбцов навигатора
- Панель поиска переработана
- Переработан алгоритм сохранения последних открытых файлов
- Переделана система хранения настроек, частично
- Изменение высоты строки навигатора мышью
- Масштабирование колесом в предпросмотре отключено из-за неправильной работы
- Удалена опция выбора языка комментариев кода
v0.0.0.41 2021.07.17
- Рефакторинг настроек
- Переработана статусная строка
- Уменьшено кол-во однотипных обработчиков
- Небольшие изменения в пользовательском интерфейсе
- Устранение обнаруженных мелких недочетов
- Модернизирован диалог подтверждения
- Рефакторинг кода рисования пикселей
v0.0.0.42 2021.07.18
- Добавлена поддержка интернационализации интерфейса (перевод)
- Редизайн форм некоторых окон
- Рефакторинг кода
- В свойства шрифта добавлено путь к файлу
v0.0.0.43 2021.07.19
- Добавлена опция и функционал шахматного фона редактора
- Добавлена опция вывода кода символа в навигаторе в HEX-виде
- Устранение обнаруженных мелких недочетов
v0.0.0.44 2021.07.20
- Модернизация формы генерирования кода
- Устранение обнаруженных мелких недочетов
v0.0.0.45 2021.07.21
- Модернизация формы импорта шрифта
- Устранение обнаруженных мелких недочетов
- Исправлено некорректное поведение при масштабировании колесом
- Масштабирование колесом в предпросмотре возвращено
v0.0.0.46 2021.07.22
- Модернизация главной формы
- Индикатор масштаба в окне импорта
- Масштабирование шрифта кода в окне генератора
- Добавлена панель быстрого доступа для эффектов всего шрифта
- Добавлены флаги управления видимостью панелей быстрого доступа
v0.0.0.47 2021.07.23
- Исправлен алгоритм сброса настроек
- Выравнивание окна приложения по центру при первом запуске
- Пакетная отмена/повтор
- Пакетная вставка
- Режимы вставки: замена/AND/OR/XOR
- Добавлена панель быстрого доступа для правки шрифта
- Выравнивание боковых панелей быстрого доступа по центру
- Убран буфер для прорисовки холста (теперь рисует прямо в компоненте)
- Переделан экспорт изображения образца текста (стал быстрее).
- Добавлен список последних файлов как контекстное меню кнопки "Открыть"
- Добавление сохраняемых файлов в список последних
- Доработка диалога "Сохранить как"
V1.0
v1.0.0.48 2021.07.24
- Добавлены проверки целостности и корректности при загрузке файла
- Подготовлен файл справки
- Релиз версии 1.0
v1.0.0.49 2021.07.29
- Добавлена возможность открывать справку в .html, .md и онлайн
- Добавлена ссылка на репозиторий в п.м. "Справка"
- Исправлена ошибка диапазона в проверке при открытии файла
- Исправлена ошибка в расчете ширины столбцов навигатора
- Изменен формат файла RHF (для сохранения кодировки)
- Начата реализация выбора кодировки
v1.0.0.50 2021.07.30
- Добавлен выбор кодировки
- Исправлены обнаруженные ошибки
- Исправлены ошибки, связанные и локализацией отдельных мест
- Добавлена локализация EN
v1.0.0.51 2021.07.31
- Исправлена проблема с заданием имени файла при открытии/сохранении
- Исправлено задание имени приложения-генератора для комментария в коде Си
V1.1
v1.1.0.52 2021.08.27
- Исправлены пути к ресурсам.
- Первый публичный выпуск.
v1.1.0.53 2021.09.02
- Исправлена ошибка при вводе названия шрифта в окне импорта: https://gitlab.com/riva-lab/matrixFont/-/issues/1.
- Счетчик кадров в секунду убран (оставлен только для отладочных версий).
- Добавлен эффект центрирования символа по горизонтали и вертикали.
- Убраны кнопки масштаба в окне предпросмотра образцов текста (масштабировать можно колесом мыши).
- Добавлен импорт изображений на холст (форматы BMP, PNG, JPEG, TIFF, PNM, ICO) — диалог или перетаскиванием в окно.
- Добавлен флажок в настройках "Автообновление предпросмотра" и кнопка "Обновить" в окне предпросмотра.
- Увеличены лимиты размеров до 512х512 (лучше не использовать больше 100х100).
V1.2
v1.2.0.54 2023.08.14
- Переход на Lazarus 2.2.6 FPC 3.2.2.
- Мультистроки убраны за ненадобностью (в новой версии Lazarus баг со строками исправлен).
- Файлы перевода теперь общие для всех версий и названий исполняемого файла.
- Добавлены новые кодировки KOI-8 (R, U, RU) вместо одной KOI-8.
- Исправлен баг запоминания режима изменения размера: https://gitlab.com/riva-lab/matrixFont/-/issues/2.
- Исправлена поломка генератора при создании нового проекта: https://gitlab.com/riva-lab/matrixFont/-/issues/3.
- Окно about — картинка лого в JPEG для уменьшения размера бинарника.
- Иконка приложения пересоздана с новым набором разрешений.
- Исправлена ошибка запоминания последнего выбранного шрифта в окне импорта.
- Курсор сплитера не отображался (сломался после обновления Laz+FPC) — исправлено.
- При изменении кодировки в свойствах проекта не было изменений в навигаторе — исправлено.
- Поиск по вводу символа сделан удобнее — не надо выделять уже введенный символ.
v1.2.0.55 2023.08.15
- Из файлов перевода исключены строки, не подлежащие переводу.
- Протестировано на поддержку разных DPI системы.
- Небольшой рефакторинг окна about.
- Обновлены скрипты создания релизных архивов.
V1.3
v1.3.0.56 2024.01.24
- Добавлены кнопки "Переместить символ вверх" и "Переместить символ вниз": https://gitlab.com/riva-lab/matrixFont/-/issues/5.
V1.4
v1.4.0.57 2024.02.01
- Бета-версия импорта шрифта из кода C: https://gitlab.com/riva-lab/matrixFont/-/issues/6.
- Изменен значок команды "Генерировать".
- Добавлена команда "Импорт кода С" в меню Файл.
v1.4.1.58 2024.02.02
- Добавлена настройка декодера кода C "Тип шрифта".
- Автоматическое распознавание параметров импорта шрифта из кода C matrixFont.
- Исправлено извлечение массива в декодере кода C.
- Исправлено ошибку в декодере кода C при размерах, кратных 8.
v1.4.2.59 2024.02.05
- Декодер кода C - добавлена реализация формата LCDVision V1.34.
- Декодер кода C - добавлена реализация формата AdaFruit (https://glenviewsoftware.com/projects/open-source/index.html).
- Добавлено автоматическое открытие окна импорта при перетаскивании файла h/hpp/c/cpp в главное окно.
v1.4.3.60 2024.02.06
- Убран обработчик таблицы с кодом автовыравнивания ширины столбцов, это реализовано нативно.
- Исправлено некорректную обработку размеров в функции оптимизации холста.
- Доработки декодера кода C, исправление обнаруженных ошибок.
- Доработан интерфейс окна импорта из кода C.
- Обновлен файл перевода English.
v1.4.4.61 2024.02.07
- Растровые иконки заменены на векторные, подключен пакет TImageSVGList.
v1.4.5.62 2024.02.07
- Добавлен пункт меню "Репозиторий проекта", "Сайт" переименован в "Домашняя страница".
- Исправлена ошибка с видом курсора на сплиттере.
- Добавлена кнопка "Очистить код" в окне импорта кода.
- Исправления замеченных ошибок.
v1.4.6.63 2024.02.10
- Исправлена неточность с обработкой запятых в декодере кода.
- Добавлена опция "Порядок бит" в окно импорта кода.
v1.4.7.64 2024.02.12
- Добавлена новая опция: окно "Карта символов".
V1.5
v1.5.0.65 2024.02.13
- Добавлен инструмент "Поворот символа" по/против ч.с.
v1.5.1.66 2024.02.16
- Редизайн панелей инструментов.
v1.5.2.67 2024.02.17
- Реорганизация главного меню.
- Уточнения перевода English.
V1.6
v1.6.0.68 2024.04.17
- Переход на использование пакета AppFeaturesPkg.
- Замена системы хранения настроек: AppSettings.
- Замена системы хранения свойств формы: TAppTuner.
- Замена системы локализации: AppLocalizer.
- Редизайн окна настроек.
- Добавлена поддержка темной темы (тестовая).
- Исправлен код индексации строк навигатора для учета заголовка.
v1.6.1.69 2024.04.18
- Почищен модуль u_utilities.
- Исправлено сохранение высоты строк навигатора при изменении ее мышью.
- Заменены пустые кнопки на пустые TPanel в панелях инструментов (исправление для темной темы).
- Изменен вид и способ вызова выпадающего списка последних открытых файлов.
v1.6.2.70 2024.04.18
- Исправления в интерфейсе для поддержки темной темы.
v1.6.3.71 2024.04.19
- Добавлен набор цветов для темной темы.
v1.6.4.72 2024.04.20
- Добавлена настройка управления видимостью навигатора.
- Подсветка кода подкорректирована и оптимизирована: оставлен только один экземпляр.
v1.6.5.73 2024.04.25
- Модернизирован механизм прилипания окон.
- Добавлен раздел в настройках для управления прилипанием окон.
- Исправлены обнаруженные ошибки.
- Заменен TPageControl на TNotebook в окне настроек (при запуске).
v1.6.6.74 2024.04.26
- Добавлена опция "Загружать последний открытый файл при запуске".
- Добавлена опция "Открывать в редакторе символ из карты по одинарному/двойному щелчку мышью".
- Добавлена настройка цветов карты.
v1.6.7.75 2024.04.27
- Добавлен экспорт карты символов.
- Настройка цветов сделана в виде таблицы для большей компактности.
- Опция "Открывать в редакторе символ из карты..." перенесена на вкладку "Карта".
v1.6.8.76 2024.04.29
- Добавлен импорт из изображения карты символов, сгенерированного matrixFont.
- Исправление в дизайне окна генератора.
v1.6.9.77 2024.04.30
- Переработка кода окна "о программе".
- Растровое изображение лого заменено на векторное SVG.
v1.6.10.78 2024.05.01
- Исправлены обнаруженные ошибки.
- Корректировка надписей интерфейса.
v1.6.11.79 2024.05.11
- Исправлена ошибка при поиске символа, не входящего в кодировку.
- Добавлено контекстное меню для строки состояния.
- Небольшой редизайн формы свойств.
- Исправление заголовка формы изменения размера.
v1.6.12.80 2024.05.13
- Исправлена информация о версии, для корректного отображения в диспетчере задач.
- Переименованы режимы сборки.
V2.0
v2.0.0.81 2024.05.14
- Переработаны скрипты.
- Обновлена информация readme.
- Выпуск версии 2.0.
V2.1
v2.1.0.82 2024.05.30
- Добавлена поддержка импорта/экспорта шрифтов в формате RBF.
- Обновлена информация readme.
v2.1.1.83 2024.05.31
- Рефакторинг кода.
- Исправлено некорректное поведение при сворачивании главного окна.
v2.1.2.84 2024.06.04
- Добавлена опция "Ширина пробела" для экспорта шрифта в RBF.
Идеи и планы
Идеи для расширения функционала. Намеченные планы.
- сделать один битмап, а в объектах символов использовать его через указатель
- сделать формат файла для сохранения шрифта
- сделать предпросмотр текста шрифтом
- добавить предупреждения при несохраненном измененном шрифте
- исправить отмену действия в загруженном файле
- сделать импорт шрифта из системы в приложение
- исправить генерацию кода (запятая в конце массива)
- добавить окно подтверждения при закрытии несохраненного шрифта
- добавить в файл сведения о версии приложения
- добавить в файл сведения о версии формата файла
- добавить поле ввода префикса для дефайнов в генераторе
- добавить масштаб символа "вписанный"
- добавить обработку средней кнопки мыши (инверсия пикселя)
- сделать поиск символа в таблице по названию и по коду
- сделать выбор диапазона вывода в генераторе кода
- устранить баг при рисовании символа на краях
- доработать предпросмотр текста шрифтом
- исправить баг с отменой всех изменений в загруженном шрифте (отменяется загрузка)
- добавить масштабирование и индикатор масштаба в окно импорта шрифта
- переработать принцип записи истории изменений (некорректная работа при изменении размеров холста)
- добавить проверку имени шрифта (нелатинские символы в генерируем коде)
- сделать сохранение настроек и параметров приложения
- добавить список последних открытых файлов
- добавить возможность локализации
- добавить панель быстрого доступа для эффектов всего шрифта
- добавить возможность показать/скрыть панели быстрого доступа
- пакетная отмена/повтор
- пакетная вставка
- режимы вставки: AND/OR/XOR
- добавить отмену/повтор изменений для всего шрифта
- реализовать графическое отображение формата генерации кода
- добавить инструменты для рисования: линии, прямоугольник, эллипс и т.п.
- добавить инструмент "заливка"
- добавить в окно предпросмотра кнопку выравнивания ширины окна по главному
- продумать вариант отображения сетки символов (вместо навигатора в виде списка) — реализована карта символов
- добавить эффект центрирования символа (по вертикали и горизонтали)
- добавить создание пользовательских макросов (список операций для выполнения по вызову макроса)
- добавить окно посимвольной статистики шрифта (кол-во пустых строк/столбцов, фактическая высота/ширина и т.п.)
- добавить опции расположения окон на экране (надо?)
- добавить выбор кодировки символов
- добавить другой тип шрифта вместо простого монохромного — со сглаживанием (несколько бит на пиксель) (?)
- генерация кода: таблица указателей на отдельные массивы для каждого символа
- добавить импорт шрифта из Си-кода
- добавить поддержку формата Adobe BDF (?)
- добавить предустановки генератора кода для разных графических библиотек
- добавить опцию генерации кода: кодирование символа битовым потоком
- добавить сжатие массива данных символа для больших шрифтов (?)
- добавить импорт изображений на холст
- добавить кодирование 2 массивами: глифы и ссылки (для оптимизации одинаковых глифов)
- добавить кнопки "Переместить символ вверх" и "Переместить символ вниз"
- добавить инструмент поворота символа на +90/-90 гр.
- при запуске восстанавливать конфигурацию окон