GEGL — библиотека для обработки изображений, которая задумана как основа GIMP нового поколения.

Название GEGL расшифровывается как GEneric Graphics Library. Существует альтернативная расшифровка, придуманная самими разработчиками: Genetically Engineered Goat, Large. Эта расшифровка настолько популярна, что в GNOME с 2002 годаThe GNOME Development Site до сих пор работает «пасхальное яйцо» в виде клона популярной игры Invaders, где в роли захватчиков выступает орда дурашливых козлов, приветливо машущих пятой ногой (для запуска следует нажать Alt+F2, и ввести команду «gegls from outer space»). Пятиногая коза несколько раз использовалась в стартовых заставках нестабильной версии GIMP.

История Работа над GEGL была начата в 2000 году небольшой командой программистов из студии Rhythm & Hues.

В марте 2004 года Кэлвин Уильямсон и ещё один участник проекта, Дэниэл Роджерс, получили [Gimp-developer] The Mark Shuttleworth offer от Марка Шаттлворта предложение профинансировать ускорение работы над GEGL и интеграцию с GIMP.

Сама история и выводы подробно изложены Дейвом Нири. Упоминаемое в тексте письмо Эвинда Коласа (текущего лидера проекта GEGL) Марку Шаттлворту доступно сейчас только в веб-архивеInternet Archive: Scheduled Maintenance.

На ежегодной конференции GUADEC в июне 2005 года в результате встречи разработчиков было принято решениеThe GUADEC meeting — gegl-developer forum — gimpusers.com возобновить работу над GEGL, к тому моменту приостановленную.

К моменту выхода GIMP 2.4 был налажен выпуск альфа-версий GEGL.

В GIMP 2.6 библиотека по выбору пользователя используется в инструментах цветокоррекции (верхняя половина меню «Цвет»), причём изменения выполняются в режиме 32 разряда с плавающей точкой на канал в RGBA.

В GIMP 2.8 проекция (все видимые слои с масками в стопке слоёв) по выбору пользователя может отрисовываться через GEGL. Условием выпуска версии 2.8 являлось обеспечение скорости отрисовки, достаточной для комфортной работы.

В GIMP 2.9.x управление тайлами и работа инструментов переведены на GEGL, часть фильтров заменена на операции GEGL, доступна обработка в режимах 16 и 32 разряда на канал (с плавающей точкой или целочисленно). Изменения будут доступны в стабильной версии GIMP 2.10.

Функциональные возможности Текущие возможности GEGL:

8-/16-/32-разрядные (с плавающей точкой) режимы, внутренняя обработка — в 32bit float linear RGBA; RGB, CIE LAB, YCbCr и простой вывод в CMYK; мозаичный, неплотный и пирамидный буферы, буфер больше размеров RAM; в качестве теста успешно загружалось изображение размером 86400x43200px; обработка и рендеринг на GPU при помощи OpenCL; загрузчики PNG, JPEG, SVG, EXR, RAW и пр.; арифметические операции, композитные операции Портера-Даффа, режимы наложения SVG, прочие режимы наложения, применение маски; базовые инструменты цветокоррекции; большинство операций обработки функционирует в HDR; рисование кривых Безье и Спиро (клотоиды); расширяемость через модули.

К библиотеке прилагается простая графическая программа для тестирования всех возможностей GEGL и несколько простых однофункциональных тестовых приложений.

Использование библиотеки Помимо GIMP библиотека GEGL используется в следующих приложениях:

GNOME Photos — приложение для управления фотоколлекциями и простого редактирования фотографий в GNOME; GnomeScanGnomeScan — GNOME Live!  — простая программа для сканирования, созданная для рабочего окружения GNOME; Niepce Digital — приложение для фотографов в стиле Adobe Photoshop Lightroom и Apple Aperture; gedl — нелинейный видеоредактор.

Примечания

Ссылки Страница проекта

Категория:Графические библиотеки Категория:API Категория:Свободные библиотеки программ Категория:GIMP