4. Версия 2.0

Сначала статистика: код GIMP содержит около 230,000 строк кода C, и большинство из них были переписаны при переходе с версии 1.2 на 2.0. Однако с точки зрения пользователя GIMP 2 очень похож на GIMP 1; функциональность достаточно близка так что пользователи GIMP 1 не заблудятся. Во время переписывания программы разработчики сильно почистили код, что хоть и не заметно для пользователя, сильно облегчает поддержку и будущие изменения. Поэтому код GIMP 2 намного лучше организован и легче поддерживать, чем код GIMP 1.2.

Основные инструменты

Основные инструменты в GIMP 2 не сильно отличаются от своих предшественников в GIMP 1. Инструмент «Выделение по цвету» теперь показан на панели инструментов GIMP, но уже был в меню «Выделение» GIMP 1. Инструмент преобразования был разбит на несколько специализированных инструментов: Вращение, Масштаб, Искривление и Перспектива. Операции цвета теперь связаны со слоями в меню СлойЦвета, но это только чистка: они уже были в меню Изображение (что нелогично, так как они работают над слоями). Полностью новых инструментов в этом выпуске нет, но два инструмента были переписаны: инструменты Текст и Контур. О них ниже.

Пользовательский интерфейс для инструментов сильно изменился. Диалог «Параметры инструмента» теперь не меняется в размере при выборе нового инструмента. Многих пользователей раздражало, что окно меняется в размере при каждом новом инструменте. Теперь, по умолчанию, диалог «Параметры инструментов» постоянно открыт и прикреплён под панелью инструментов, где его легко найти.

Параметры инструмента

«Параметры инструментов» для многих инструментов приобрели новые возможности по сравнению с GIMP 1. Не перечисляя их все, вот наиболее заметные.

У всех инструментов выделения есть кнопки режима: Заменить, Добавить, Вычесть и Пересечь. В GIMP 1 единственным способом изменить выделение было с помощью клавиш Ctrl и Shift, что приводило к путанице, так как они использовались и для других целей. На пример, нажатие и держание клавиши Shift при использовании инструмента прямоугольного выделения заставляет выделять квадрат. Поэтому, чтобы добавить квадратное выделение, нужно было нажать Shift, нажать мышкой, отпустить Shift, нажать Shift ещё раз, передвинуть мышку, чтобы выделить квадрат, и отпустить Shift.

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

Параметры «Фиксированная длина штриха» и «Взять цвет из градиента» теперь доступны для всех инструментов рисования. Теперь у каждого инструмента рисования есть свои собственные настройки кисти, градиента и шаблона, в отличие от GIMP 1, где была одна настройка на все инструменты. Теперь можно указать разные кисти для Карандаша и Кисти, разные шаблоны для Штампа и Заливки. Эти настройки можно изменить при помощи колеса мышки, поместив курсор над соответствующим параметром (особенно полезно для быстрого изменения кисти).

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

Наиболее видимые изменения в GIMP 2 произошли в пользовательском интерфейсе. GIMP теперь использует графический инструментарий GTK2+ вместо GTK+. Одна из приятных функциональностей в новых библиотеках — прикрепляемые диалоги и перемещение с помощью Tab между закладками в одном окне — эта функциональность присутствует во многих браузерах. GIMP 1 был известен открытием диалогов где попало; в GIMP 2 можно указать использовать фиксированные рамки. В каждом диалоге теперь есть меню управления закладками, что даёт гибкость при организации рабочего стола.

У окна изображения есть новые свойства. Они необязательно включены по умолчанию, но их можно выбрать из меню НастройкиИнтерфейсОкна изображения. Пункт «Показать края кисти», например, позволяет видет очертания кисти при использовании инструментов рисования. В разделе «Внешний вид» можно переключать показ планку меню вверху окон изображения. Можно выбрать работу в полноэкранном режиме. Выбор показа элементов доступен из всех окон изображений при нажатии правой кнопки мышки из меню «Вид». Меню изображения также доступно после нажатии на маленьком треугольнике в левом верхнем углу области рисования. Установки в диалоге «Настройки» используются по умолчанию, а установки в изображении распространяются только на это изображение. (Полноэкранный режим можно переключать клавишей F11; клавиша Esc выводит из полноэкранного режима).

GIMP 2 предлагает клавиши-ускорители для ускорения вызова команд. Если вам надоело ползать по меню мышкой, то дойти до команды можно с помощью клавиатуры. На пример, если есть планка меню, чтобы создать новое изображение, нужно нажать комбинацию Alt+F+N. Без планки меню нажмите Shift+F10, чтобы вызвать меню в левом верхнем углу, потом нажимайте клавиши-стрелки или F а потом N, чтобы создать новое изображение. Клавиши-ускорители отличаются от клавиш быстрого доступа: ускорители помогают перемещаться по меню, тогда как клавиши быстрого доступа вызывают определённую команду напрямую. На пример, комбинация Ctrl+N — быстрый доступ к команде создания нового изображения.

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

GIMP поставляется с некоторыми присвоениями клавиш для меню. Если вы хотите их заменить на присвоения Photoshop, например, вы можете переименовать файл menurc в вашей папке данных в файл oldmenurc, переименовать файл ps-menurc в menurc, и перезапустить GIMP.

Использование закладок и панелей

GIMP 2.0 ввёл систему закладочный диалогов, чтобы можно было организовывать рабочий стол по вкусу. Почти все диалоги можно передвинуть и бросить на другое окно, чтобы сделать закладку из этого диалога.

В добавок, внизу каждого диалога есть область прикрепления: бросайте туда диалоги, и они прикреплятся под нижней группой закладок.

Написание сценариев

«Python-fu» — стандартный язык разработки сценариев для GIMP 2. Это значит, что функции GIMP можно вызывать из сценариев на Python, или использовать Python для написания дополнений GIMP. Python достаточно легко понять даже для начинающих, особенно в сравнении с языком Scheme, используемый для Script-Fu в GIMP 1. Присвоения в Python были расширены набором классов для общих операций, чтобы не искать в базе процедур GIMP функции для простейших операций. Кроме того, у Python интегрированная среда разработки и огромная библиотека, которая работает не только на Linux, но и в Microsoft Windows и Apples Mac OS X. Самый большой недостаток GIMP 2.0 это то, что стандартный пользовательский интерфейс, предлагаемый с Python-fu не использует всю мощь языка Python. Текущий интерфейс был разработан для поддержки простых сценариев, и более полная и продвинутая поддержка намечается на будущее.

GIMP-Perl больше не поставляется со стандартным пакетом GIMP 2, но доступен как отдельный пакет. Не сегодняшний момент GIMP-Perl поддерживается только в системах наподобие Unix. Он включает как простой язык сценариев, так и возможность разрабатывать более продвинутые интерфейсы с помощью модуля perl Gtk2. Манипуляций точек напрямую возможна с помощью PDL.

У Script-Fu, основанного на «Scheme», те же недостатки, что и прежде: не интуитивный, трудный в использовании и без реальной среды разработки. У него однако есть существенное преимущество перед Python-fu: Script-Fu интерпретируются в GIMP напрямую и не требуют установки дополнительных пакетов. Для Python-fu необходима установка пакета для языка Python.

Инструмент Текст

Проблема с инструментом текста в GIMP 1 заключалась в том, что текст нельзя было изменить после его отображения. Если нужно было изменить что-либо у текста, надо было «отменить» и попробовать снова. Если были другие изменения со времени создания текста, то они тоже отменялись. В GIMP 1.2 было дополнение «динамический текст», которое позволяло создавать особый слой текста и держать их неограниченное время, в изменяемой форме, но у него были дефекты, и его неудобно было использовать. Инструмент Текст второго поколения представляет собой смесь старого инструмента и этого дополнения. Теперь все параметры доступны в «Параметрах инструмента»: шрифт, размер шрифта, цвет текста, выравнивание, сглаживание, отступ, пробелы. Чтобы создать новый текст, нажмите на изображении и появится небольшой диалог. Текст, вводимый в этот диалог, сразу появляется в изображении (и возврат каретки работает правильно!). Создаётся новый слой специально для текста; размер этого слоя автоматически меняется, чтобы вместить весь вводимый текст. Можно импортировать простой текстовый файл, можно даже печатать справа налево на арабском. Если выбрать слой текста, то нажатие на нём покажет диалог редактора, и текст можно изменить.

Инструмент контура

У инструмента Контур второго поколения полностью новый интерфейс. Первое значительное изменение заключается в том, что контуру необязательно быть закрытым. Контур может состоят из многих несоединённых отрезков кривой. Второе изменение — у инструмента Контур теперь три режима: Создание, Правка и Перемещение.

В режиме создания можно создать контур, добавить узлы к существующему контуру и изменить форму кривой перемещением краёв кривой или «обработчиков» узла.

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

В режиме перемещения, как не трудно догадаться, можно передвигать компоненты контура. Если у контура несколько компонентов, каждый можно двигать независимо от других. Чтобы двигать их все вместе, нажмите клавишу Shift.

Две другие функции работы с контурами появились в GIMP 2.0. GIMP может не только загрузить изображение SVG как растровое, но и сохранить контуры SVG без изменений как контуры GIMP. Это означает GIMP ещё лучше дополняет приложение по векторной графики. Другое нововведение, которое намного увеличило полезность инструмента контуров — векторная обводка. В предыдущих версиях обводка контуров и выделений заключалась в обводке кистью вдоль контура. Эта функция до сих пор доступна, но теперь обводить контур можно очень точно при помощи векторной библиотеки libart.

Другие улучшения

Вкратце о других улучшениях:

  • Higher-quality antialiasing in some places — most notably in the Text tool.

  • Пиктограммы и меню могут тематизированы. Вы можете создать свой набор пиктограмм и применить их к панели инструментов командой НастройкиИнтерфейс. Одна тема под названием «маленькая» прилагается в стандартном пакете.

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

  • Появились четыре новых режима слоя: «Направленный свет», «Рассеянный свет», «Извлечение зерна» и «Объединение зерна».

  • Если есть активное выделение, изображение можно прямо кадрировать до размера выделения командой ИзображениеКадрировать.

  • К направляющим была добавлена сетка для облегчения позиционирования. Она дополняет направляющие и облегчает работу выравнивания объектов.

  • Диалог слоёв стал более последовательный в том, что теперь нет в нём спрятанных команд, которые доступны только при правом нажатии на пиктограмме слоя. Операции над слоями можно вызывать прямо через меню изображения: Маска слоя, Прозрачность, Преобразования и Цвета слоя теперь находятся в подменю Слой.

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

  • У диалога выбора цвета есть режим CMYK с пиктограммой принтера.

  • Данные EXIF, созданные цифровыми фотоаппаратами теперь читаются и сохраняются в файлах JPEG.

  • Теперь поддерживаются анимации MNG. Формат файла MNG можно рассматривать как анимированный PNG. У него все преимущества PNG над GIF, такие как больше цветов, 256 уровней прозрачности и, что немаловажно, свобода от патентов. Этот формат стандартизирован, и все современные браузеры его поддерживают.

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

  • Фильтр микшера каналов был доступен на интернете как дополнение, теперь находится в меню ФильтрыЦвета.