Релиз GIMP 2.99.2

 chip    12 November 2020

gimp_2.99.2_00.jpg

Релиз нестабильной ветки графического редактора GIMP 2.99.2

Состоялся первый бета релиз нестабильной ветки свободного растрового графического редактора GIMP 2.99.2, на основе которой будет сформирована стабильная версия GIMP 3.0. Основной особенностью данной веки является полный переходи на GTK3.

Основные нововведения


Пользовательский интерфейс


Благодаря переходу на использование GTK3 были первым же бросающимся в глаза отличием является полностью изменённый и отчасти непривычный внешний вид программы. Появилась возможность использования новых виджетов (вместо попыток подгонки старых) и куда большая возможность в тонкой настройке при помощи декораторов на стороне клиента.

2 01

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

Улучшена поддержка разнообразных устройств ввода (в основном это графические планшеты). В GIMP 2 было много проблем с их нативной поддержкой, включая:
- необходимость подключения планшета до запуска программы;
- необходимость явного включения в настройках каждого нового устройства;
- нестабильность программы при горячем отключении устройства ввода.
GIMP 3 теперь поддерживает беспроблемное горячее подключение планшетов и упрошен доступ к тонкой настройке.
Параллельно проводятся работы по улучшению поддержки сенсорных жестов (масштабирование, панорамирование, поворот холста и т.д.). К сожалению данное направление на текущий момент не является приоритетным.

Переход на GTK3 так же означает что теперь поддерживаются темы на основе CSS, что значительно упрощает создание и кастомизацию. К сожалению это так же означает, что старые темы больше несовместимы с GIMP 3. Улучшена поддержка символьных наборов пиктограмм, которые теперь могут автоматически подстраиваться под цвета выбранной темы. Поскольку тёмная тема стала основной, то было улучшено качество тёмного режима оформления. Также одна и также тема может иметь и светлый, и тёмный вариант исполнения одновременно, а также одновременно цветные и монохромные иконки пиктограмм.

2 02

На текущий момент доступна только одна тема - системная, что является вынужденной мерой.

С переходом на GTK3 автоматически появилась штатная поддержка протокола Wayland. На данный момент все ещё существуют проблемы с утечками памяти, некорректной обработкой масштабирования или графическими артефактами, но они будут устранены до выпуска стабильной ветки. К тому же не все интерфейсы были переведены на использование порталов, а некоторые диалоги не будут адаптированы даже после релиза GIMP 3.0.

Поддержка мультивыделения слоёв


Добавлена поддержка выделения нескольких слоёв одновременно (!). Теперь можно выделять необходимое количество слоёв групповым (Shift+click) или одиночным выделением (Ctrl+click) и перемешать, группировать, обрезать, масштабировать и деформировать их все одновременно. При выборе цвета пипеткой выбирается сводный для всех выделенных слоёв цвет. Рисование и GEGL фильтры на текущий момент действуют только для одного слоя.

2 03

Плагины


В API для плагинов в результате работы была частично сломана совместимость. Часть функций были объявлены устаревшими. В текущий момент ведутся работы по составлению документации для облегчения портирования несовместимых плагинов. Обновление не должно составить больших проблем.

Так же среди особенностей изменения в API является переход на использование реальных объектов, а не их id, что позволяет по полной использовать типизации объектов и упредить часть ошибок.

Для работы с файлами теперь используется новый API GFile основанный на Glib/GIO, что позволяет унифицировать, добавить прозрачность и повысить надёжность работы с файлами. К примеру теперь нет необходимости заботится о кодировке символов для фалов. Кроме того через GFile можно получить доступ ко всем возможностям модулей GIO (обращение к сетевым и удаленным хранилищам).

Некоторые важные изменения были внесены в API для объявления подключаемого модуля плагинов. Теперь это делается через создание подкласса от класса GimpPlugIn и переопределения некоторых методов для назначения и документирования созданных процедур подключаемого модуля.

Весь API программы вынесен через GObject" target="_blank">-- url -- Introspection, что даст возможность создавать плагины на разных языках программирования.

На текущий момент кроме C и C++ полностью поддерживаются: Python 3, JavaScript, Lua и Vala. Теперь у подобных плагино есть доступ не только к полному API GIMP, но и ко многим более интроспективным API, используемым в качестве зависимостей для GIMP. Например, плагин может иметь доступ ко всем API интерфейсам GLib/GIO, GTK, Pango, Cairo, а также API интерфейсу babl и GEGL (для прямой манипуляций с пикселями и доступа к огромному количеству встроенных функций).

В качестве демонстрационного примера предоставлен плагин Goat exercises, который демонстрирует как реализовать типовую функциональность на разных языках. Этакий аналог Hello World для GIMP.

2 04

Расширения


Реализован новый формат файлов - расширения и менеджер расширений (Edit > Manage Extensions), позволяющий разработчикам размещать в специальном репозитории эти расширения (плагины и дополнительные наборы кистей, текстур и градиентов, а пользователям устанавливать их одним кликом в интерфейсе).

2 05

В текущую ветку интегрировано большая часть наработок проекта Space invasion, основной целью которого является переход на нормальную поддержку преобразование цветового пространства с использованием babl. Частично функционал уже был перенесена в ветку 2.10, но далеко не все и стабильность работы не всегда была приемлимой. Для ветки GIMP 3 планируется перенести все наработки, но на текущий момент ещё остаются нерешенные проблемы.

Остальное


Добавлена поддержка кеша рендеринга, в котором сохраняются результаты масштабирования, цветокоррекция, фильтров и масок, что положительно сказалось на быстродействии программы. Так же появился параметр Zoom Quality (качество масштабирования), позволяющий добиться компромисса между скоростью работы масштабирования и его качеством при предпросмотре.

Улучшены правила импортирования. Новая опция Convert to Preferred Profile позволяющая по умолчанию преобразование импортируемого изображения производить в соответствии с выбранным профилем, а сохранение встроенного профиля оставлено в качестве опции. Так же добавлена новая секция Metadata Rotation Policy (политика ротации), позволяющая определить что делать с метаданными если таковые присутствуют.

2 06

Компактные (уменьшенный) слайдеры теперь включены по умолчанию и являются единственным возможным вариантом, что позволило оптимизировать занимаемое виджетами пространство. Так же цвет данных слайдеров на текущий момент зависит не от темы программы, а от глобальных настроек операционной системы (по факту основной цвет GtkProgressBar)

2 07

Многие части кода были заметно переработаны для улучшения их работы и облегчения их последующего обслуживания.


На платформе Linux данный релиз доступен как предварительная сборка в формате Flatpak, так и как исходный код для ручной сборки. Примечание: для корректной сборки из исходников крайне желательно изменить в файле configure.ac версию GEGL 0.4.27 на стабильную 0.4.26.
Для платформы Windows доступны ночные сборки.
К сожалению для платформы macOS нет официальных подготовленных пакетов.

Скачать готовые сборки и исходный код.


Похожие темы


0 Комментарии

Пожалуйста, войдите, чтобы оставить комментарий
Если вы не зарегистрированы, нажмите здесь для регистрации

Онлайн

  • Гости: 7
  • Пользователи: 0
  • Целое количество зарегистрированных пользователей: 289
  • Новый ползователь: Gordonboilt
  • Рекорд он-лайн: 197
    Гости: 197 Пользователи: 0 на11 January 2023