Skip to content

Latest commit

 

History

History
438 lines (299 loc) · 26.4 KB

CHANGELOG.md

File metadata and controls

438 lines (299 loc) · 26.4 KB

Changelog

История изменений. Формат основан на Keep a Changelog.

Проект следует принципам семантического версионирования с версии 0.1.0

[0.2.12] - 2024-10-26

Изменено

  • Во всех пресетах выставлена стратегия размера отступ. Раньше они были выставлены только у импакта и субтитров, что приводило к контринтуитивному поведению. Теперь у всех, кроме субтитров, стоит "одинаковая высота" и 33.(3).

[0.2.11] - 2024-10-01

Добавлено

  • Добавлен кэш текстур и свойств текста, теперь за один кадр в большинстве случаев будет пересчитываться только активный блок, что должно оптимизировать большинство проблем с производительностью, особенно в Firefox.

[0.2.10] - 2024-09-29

Добавлено

  • Теперь можно задавать фиксированный размер шрифта в пикселях или пунктах.
  • Теперь можно задавать относительный размер шрифта в долях высоты кадра.
  • Теперь можно редактировать коэффициент отступа текста.
  • Больше плавных анимаций в UI.

Изменено

  • Междустрочный интервал и настройки размера шрифта были спрятаны под многоточие.
  • В пресете "Субтитры" теперь используются относительные размеры и увеличен отступ.
  • Ширина в глобальном контейнере для текста теперь 90% вместо 96%

Исправлено

  • Исправлено зависание при уменьшении в ноль блока с подбором размера шрифта "одинаковая ширина".
  • Удалены лишние логи.

[0.2.9] - 2024-02-23

Добавлено

  • У пресетов теперь есть тултипы с кратким описанием.
  • Новый режим подбора размера шрифта: по всей ширине. Для каждой строчки размер шрифта подбирается отдельно так, чтобы все строчки оказались одной ширины. В этом режиме междустрочный интервал измеряется в пикселях, а не в строках.
  • В мем-пример добавлен фрейм с демкой нового режима подбора размера шрифта.

Исправлено

  • В списке шрифтов названия теперь должны всегда влезать.
  • Устранена гонка при загрузке текстур, которая иногда приводила к ошибке при открытии мема.

[0.2.8] - 2024-02-02

Добавлено

  • Шрифты:
    • Bad Script
    • JetBrains Mono
    • Lora
    • Marck Script
    • Press Start 2P
    • Raleway
    • Tektur
    • Unbounded
  • Инструменты разработчика (Ctrl+F12, Shift+F12).

Изменено

  • Переименованы пресеты
    • TRUE IMPACT -> КАНОНИЧНЫЙ ИМПАКТ
    • post-ironic lobster -> постироничный лобстер
    • Arial bold subtitles -> Субтитры
    • White Helvetica bold -> подпись с тенью
    • Arial subtitles -> Arial с обводкой
    • Black Arial -> Обычный текст
  • В персете Субтитры теперь тень.
  • Обновлены фреймы с демонстрацией шрифтов и пресетов.

Удалено

  • Пресеты
    • Helvetica bold subtitles
    • Black Arial bold
    • Black Helvetica bold

[0.2.7] - 2024-01-31

Добавлено

  • Клонирование блоков по кнопке в списке блоков.
  • Теперь в списках происходит скролл к активному элементу при его смене.
  • При преобразовании блока из фиксированного в свободный селектором в списке блоков, его позиция и размеры сохраняются. Добавлена дополнительная опция преобразования со сбросом, работающая как раньше.
  • Теперь можно выбирать режимы смешивания и наложения блока (реализованы на основе веб-стандарта).
  • Теперь можно управлять прозрачностью всего блока (в настройках наложения).
  • Добавлены клеточки на фон канваса для видимости прозрачности.
  • Кнопка "Добавить фреймы из мема" позволяет добавлять фреймы к текущему мему из файла. Можно использовать для слияния мемов или импорта заготовленного набора паттернов.
  • Теперь можно управлять насыщенностью тени:
    • -1: полностью прозрачная тень;
    • 0: как было раньше;
    • +1: полная непрозрачность.
  • Пресет White Helvetica bold

Изменено

  • Кнопка для добавления блока с изображением стала больше и с текстом.
  • У настроек блока вкладки теперь расположены сбоку, а не сверху.
  • Теперь эффекты применяются не ко всему целому блоку текста, а к каждой его части (тени/обводка/заливка) отдельно. Это может повлиять на работу некоторых эффектов, если они не аддитивны (например, эффект "Пиксели").
  • Переименован тип контейнера "Прямоугольник" на "Свободный".
  • Включено сжатие при создании .meme, мемы должны стать немного легче.
  • Обновлены плейсхолдеры и проект с примерами.

Исправлено

  • Не отображались спрайты для управления эффектами после переключения режима редактирования (перемещение/обрезка). Теперь они отображаются всегда.
  • При удалении блока/фрейма текущим выбирается ближайший в списке, а не первый.
  • Исправлено падение при попытке открыть фрейм без текстовых блоков.
  • Исправлено повторное применение прозрачности при использовании эффектов.
  • Убраны фантомы, остававшиеся после удаления блока на активном фрейме.

[0.2.6] - 2023-10-29

Исправлено

  • Изменение размеров блока и обрезка при зажатом шифте теперь делают это не одинаково для ширины и высоты, а с сохранением соотношения сторон.
  • Убрана лишняя отладочная печать.

[0.2.5] - 2023-10-29

Добавлено

  • Новый инпут: ползунок.
  • Новый эффект: пиксели. Увеличивает пиксели.
  • Пресеты: Helvetica bold subtitles, Black Helvetica bold.
  • Теперь можно создавать блоки с изображениями:
    • Для создания блока можно дропнуть файлы на список блоков или с зажатым Ctrl на текущий фрейм.
    • При активном блоке с изображением вставка файла изменит его, иначе поменяется фон.
    • У изображения можно изменять область обрезки.
  • Теперь можно устанавливать размеры фрейма вне зависимости от фона.
  • Фоновое изображение теперь можно удалить, оставив заливку одним цветом.

Изменено

  • Теперь входные данные эффектов описываются в виде json, по которому генерируется UI - необходимы шаг к кастомным шейдерам.
  • Вёрстка форм с инпутами изменена из-за добавления ползунков.
  • Заменены некоторые иконки.
  • Стили в формах.
  • У поля для текста больше нельзя менять ширину.
  • Переведены или переименованы часть настроек на правой панели.

Исправлено

  • Теперь числовые инпуты не должны выдавать странные значения с кучей знаков после запятой.
  • В числовые инпуты нельзя вводить не числа.

[0.2.4] - 2023-06-22

Добавлено

  • Новые плейсхолдеры с описанием существующего функционала.
  • Сообщение об ошибке, в случае, если что-то пошло не так при старте приложения.

Изменено

  • Отключённая обводка больше не учитывается в расчётах.
  • Изменено описание приложения.

Исправлено

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

[0.2.3] - 2023-05-17

Добавлено

  • Крестовой градиент. Интерполирует четыре цвета между гранями прямоугольника
  • Эффекты. Применяются к блоку, у блока может быть несколько эффектов.
    • Искажения: выпуклость, вогнутость, закручивание.
    • Цветокоррекция: оттенки серого, яркость и контраст, температура.
    • Шум был добавлен для возможности имитации мела на доске или чего-то подобного.
  • Отображение блока с фоновой картинкой. К нему можно добавлять эффекты.
  • Добавлены подписи к кнопкам без текста.

Исправлено

  • При открытии .meme неправильно сравнивалась версия.
  • В Firefox по умолчанию отключена возможность копирования изображений из кода, из-за чего код падал с ошибкой.
    Было добавлено сообщение для пользователя о том, как это исправить.

[0.2.2] - 2023-05-09

Добавлено

  • Загрузка пользовательских изображений для паттернов. Они не будут сохранятся между перезагрузками, но будут сохранятся в .meme.
  • Поддержка пользовательских паттернов в .meme

Изменено

  • Кнопки стали более единообразны.
  • Паттерн glitter-gold заменён, поскольку на предыдущем были обнаружены вотермарки.
  • Теперь по умолчанию паттерн не растягивается, а имеет масштаб 1:1.

Исправлено

  • Положение выпадающих списков было неправильным при прокрутки страницы.
  • Иногда паттерн менялся у нескольких блоков одновременно, теперь такого быть не должно.

[0.2.1] - 2023-05-06

Добавлено

  • Ссылка на группу ВК.

Изменено

  • Теперь превью обновляется после окончания редактирования, а не синхронно с изменениями, в связи с проблемами производительности drawImage на некоторых компьютерах.
  • Ресурсы перекодированы из png в webp, теперь они занимают в ~4 раза меньше места. Загрузка с нуля теперь занимает в 2 раза меньше времени.

Исправлено

  • Исправлено отсутствие отрисовки начального фрейма при открытии.
  • Ошибка 404 на старте приложения из-за неверного пути иконки заливки.
  • Опечатки.
  • Переработана работа с alpha-каналом: теперь прозрачность фона сохраняется, а на части устройств должна повыситься производительность.

[0.2.0] - 2023-04-28

Добавлено

  • У блоков текста можно редактировать контейнер, который может быть глобальным, как в случае основного блока, или прямоугольником.
  • У текста можно настроить позиционирование по вертикали и по горизонтали. В случае глобального контейнера, позиционирование по вертикали работает в рамках всего фрейма, что позволяет расположить текст не только снизу, но и сверху или по центру фрейма.
  • У глобального текста можно регулировать минимальную высоту и максимальную высоты и ширину, вместо добивания пробелами.
  • Любой материал может быть полупрозрачным.
  • Фреймы можно клонировать.
  • Блоки можно конвертировать из основного в дополнительный и обратно.
  • Кнопка "Копировать" над текущим фреймом копирует итоговое изображение.

Изменено

  • Тени настраиваются отдельно для заливки и обводки.
  • Весь UI был переписан, произошёл редизайн.
  • Фавикон.
  • Междустрочный интервал теперь считается в строках и изменяется над полем ввода текста.
  • Настройка толщины обводки перемещена во вкладку с обводкой, измеряется в % от размера шрифта.
  • Изменён алгоритм подбора отступа и габаритов глобального текста.

Удалено

  • Экспериментальные настройки.
  • Временно удалена отмена действий по Ctrl+Z.
  • Временно удалена отмена отмены действий по Ctrl+Shift+Z.
  • Временно удалена страница помощь.

Исправлено

  • Обводка без заливки теперь выглядит адекватно.
  • Алгоритм вписывания текста в блок теперь должен выдавать погрешность не более 5 пикселей.
  • Оптимизирована загрузка картинок и открытие .meme.
  • В .meme была ошибка при открытии мема с заливкой паттерном с автоматической настройкой размера.

[0.1.4] - 2023-02-11

Добавлено

  • Добавлены кнопки отмены и отмены отмены действия под текущим мемом.
  • Добавлена поддержка сенсорных экранов для инструментов модификации блока - касанием можно выбрать модификатор, а затем начать его перемещать.

Изменено

  • Если есть только один фрейм, при сохранении отрендеренного мема скачивается картинка, а не архив с картинкой.

[0.1.3] - 2023-01-29

Добавлено

  • Пресеты со стилями: над настройками текста появился селектор, в котором можно выбрать один из дефолтных стилей для текста.

Изменено

  • Теперь при создании нового блока текста в него копируется стиль текущего блока, а не дефолтный.

Исправлено

  • Текст для всех шрифтов теперь отрисовывается с первой попытки благодаря принудительной загрузки всех шрифтов из document.fonts.

[0.1.2] - 2023-01-04

Добавлено

  • Теперь можно выделять дополнительные текстовые блоки кликом мыши.
  • Экспериментальная настройка "Точка интерполяции шрифта".

Изменено

  • Оптимизирован подбор размера шрифта в дополнительных блоках с помощью интерполяции с допущением линейной зависимости ширины строки от высоты шрифта.

[0.1.1] - 2022-12-06

Изменено

  • Заменены иконки в настройках.
  • Хедер переехал в футер правой панели.
  • Примеры теперь в HD.
  • Если фрейм не влезает по высоте, скролл теперь появляется не у всей страницы, а в центральной секции.

Исправлено

  • Страница больше не раздувается при большом количестве фреймов.

[0.1.0] - 2022-12-05

Добавлено

  • Changelog.
  • Помощь.
  • Ссылка на репозиторий.
  • Пример проекта.
  • Иконки настроек текста.
  • Экспериментальные настройки в отдельной вкладке - их сохранение не гарантируется еще больше, чем других фич.
    • Толщина обводки - в процентах от размера шрифта.
    • Коэффициент для интервала - регулирует междустрочный интервал, который зависит от этого коэффициента, максимальной высоты строки и толщины обводки.

Исправлено

  • Расстояние между строками в блоках теперь считается по максимально возможной высоте строки.
  • В csv теперь экспортируются все текстовые блоки, а не только основной.

[0.0.8] - 2022-10-28

Исправлено

  • Редизайн.
    • Появились вкладки.
    • Всё что связано с проектом в целом - на панели слева (фреймы, импорт/экспорт).
    • Всё что связано с текущим фреймом - на панели справа (текст, фон).

[0.0.7] - 2022-10-21

Исправлено

  • Оптимизирован расчёт размера текста.
  • Теперь текст чётко вписывается в блок, не вылезая за границы.

[0.0.6] - 2022-10-19

Добавлено

  • Тени у текста и обводки.

[0.0.5] - 2022-10-15

Добавлено

  • Дополнительные текстовые блоки можно поворачивать.
  • Дополнительные текстовые блоки можно перемещать вдоль одной из осей, а не по всем сразу.
  • Модификаторы трансформаций блоков:
    • При масштабировании Ctrl начинает изменять размеры ассиметрично, Shift изменяет размеры пропорционально.
    • При поворотах Ctrl сбрасывает поворот к нулю, Shift задаёт повороту шаг в 45 градусов.
    • При перемещении Ctrl изменяет оси на мировые.

[0.0.4] - 2022-09-11

Добавлено

  • Отмена действий по Ctrl+Z.
  • Отмена отмены действий по Ctrl+Shift+Z.
  • Отображение фокуса на элементах списков фреймов и текстовых блоков.
  • Номера фреймов.

Изменено

  • Отображение плейсхолдера во время долгих операций.

[0.0.3] - 2022-08-30

Добавлено

  • На одном фрейме теперь может быть один основной и произвольное количество дополнительных текстовых блоков.
  • Дополнительные текстовые блоки можно перемещать и менять им размер.
  • Порядок отрисовки текстовых блоков задаётся их порядком в списке блоков.

Исправлено

  • Расчёт позиции текста в основном блоке возвращён к варианту из 0.0.1.

[0.0.2] - 2022-08-29

Добавлено

  • Возможность выбора шрифта из набора: Impact, Arial, Lobster.
  • Форматирование текста: курсив, жирный, капитель.
  • Приведение к нужному регистру (UPPER, lower, As is).
  • Настройка цвета текста и обводки: монотонный или один из предзагруженных паттернов.
  • Заливка паттерном настраивается: масштабирование, сдвиг, поворот.

Изменено

  • Текст позиционируется чуть выше, чем ранее.

[0.0.1] - 2022-08-24

Добавлено

  • Первая версия mememaker.
  • Поддержка многокартиночных мемов, состоящих из набора фреймов.
  • Можно добавлять, переставлять, удалять фреймы.
  • Drag&Drop изображений на панель слева создаст новые фреймы с заданными изображениями в качестве фона.
  • Фреймы поддерживают фон и один текстовый блок, чьи размеры и положение рассчитываются исходя из размеров картинки.
  • Фон фрейма можно менять с помощью кнопки на панели справа, Drag&Drop по центру или правее, а также Ctrl+V с изображением в буфере обмена.
  • Экспорт отрендеренного мема в виде zip-архива.
  • Экспорт текста в формате csv.
  • Сохранение мема в формате .meme.
  • Открытие мема в формате .meme.