Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция_(GIMP).docx
Скачиваний:
69
Добавлен:
25.03.2016
Размер:
39.79 Кб
Скачать

Лекция 5. Графический редактор GIMP.

Общие сведения. История появления и развития. Возможности и функции. Написание плагинов и расширений. Основные принципы работы.

Общие сведения.

GIMP — растровый редактор, свободно распространяемый, с открытым исходным кодом.

Это многоплатформенное программное обеспечение для работы над изображениями. GIMP является акронимом, означающим GNU Image Manipulation Program. Редактор GIMP пригоден для решения множества задач по изменению изображений, включая ретушь фотографий, объединение и создание изображений.

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

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

Одной из сильных сторон GIMP является его доступность из многих источников для многих операционных систем. GIMP входит в состав большинства дистрибутивов GNU/Linux. GIMP также доступен и для других операционных систем вроде Microsoft Windows™ или Mac OS X™ от Apple (Darwin ). GIMP — свободное программное обеспечение, выпускаемое под лицензией GPL(General Public License). GPL предоставляет пользователям право доступа к исходному коду программ и право изменять его.

История появления и развития.

История возникновения и развития GIMP начинается с 1995 года. Инициаторами и первыми создателями были два студента из Беркли ‒ Спенсер Кимбелл и Питер Маттис.Их целью было написать аналог программы Photoshop, который обладал бы ее возможностями, но был бы доступным бесплатно. В 1996 году был выпущен первый релиз. Первая же версия стала свободной и распространялась под лицензией GPL. Уже тогда GIMP поддерживал плагины для того, чтобы постоянно не переписывать внутренний код фоторедактора. Первая версия имела лишь основные инструменты для работы с изображениями, но её отличительной особенностью стала возможность работы с цветовыми каналами. Несмотря на недостатки программы, она имела успех ‒ поддержка сообществ, создавались уроки и обучающие материалы, писалась документация.

В 1997 году был выпущен GIMP 0.99. GTK и GDK были значительно доработаны и объединены, а то, что получилось в итоге, получило название Gtk+. Написание и выпуск GTK стал очень важным шагом не только в развитии GIMP, но и других программ с открытым исходным кодом. Последующие релизы этой серии публиковались быстро, между ними не было больших задержек. Спенсеру и Питеру удалось выпустить GIMP 0.99.10 и новый Gtk+ к 9 июня 1997 года. Это был их последний релиз. Все последующие версии разрабатывались и поддерживались другими командами разработчиков.

Возможности и функции.

  1. Полный набор инструментов, включая кисти, карандаш, распылитель, штамп и т.д.

  2. Разумное использование памяти, при котором размер изображения ограничен только свободным местом на жёстком диске.

  3. Субпиксельная дискретизация для всех инструментов рисования, дающая высококачественное сглаживание.

  4. Полная поддержка альфа-канала для работы с прозрачностью.

  5. Слои и каналы.

  6. Процедурная база данных для вызова внутренних функций GIMP из внешних приложений, таких как «Script-Fu»

  7. Продвинутые возможности по созданию сценариев.

  8. Многократные отмена и повтор действий, ограниченные лишь свободным пространством на жёстком диске.

  9. Инструменты преобразования, включая вращение, масштабирование, искривление и отражение.

  10. Поддерживаемые форматы файлов включают GIF, JPEG, PNG, XPM, TIFF, TGA, MPEG, PS, PDF, PCX, BMP и многие другие.

  11. Инструменты выделения, включая прямоугольное, эллиптическое и свободное выделение, «волшебную палочку», кривые Безье и «умное» выделение

  12. Дополнения, позволяющие легко добавлять поддержку новых форматов и фильтров.

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

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

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

Сами по себе, модули ничего не могут обработать. Ядро программы — графическая библиотека  GEGL. Она содержит функции, реализующие обработку изображений. В основе библиотеки ‒ алгоритмы и вся математика. Расширяемость программы реализована также внутри ядра.

GUI (Graphical user interface) в GIMP реализован с помощью библиотеки Gtk+. Она отвечает за то, как программная часть редактора взаимодействует с пользователем. Именно Gtk+ задает внешний вид всех окон, кнопок и других элементов интерфейса. Gtk+ поддерживает различные темы оформления.

Написание плагинов и расширений

Особенностью GIMP является возможность его легко расширять, используя плагины или скрипты.

Плагин ‒ внешняя программа, запускаемая под контролем основной и тесно с ней взаимодействующая.

Скрипт ‒ вариант плагина, являющийся интерпретируемой программой.

Идеология ‒ лучше создать плагин, реализующий какую-либо возможность по обработке изображения, чем изменять код ядра программы.

Языки программирования, на которых можно создавать дополнения для GIMP:

  • Си — язык на котором написан GIMP. Был создан для использования в ОС UNIX, но потом был портирован и на другие операционные системы.

  • TinyScheme (Script-Fu) — урезанный вариант языка Scheme. Достаточно простой и распространенный язык программирования.

  • Python — язык программирования общего назначения с акцентом на легкость разработки и читаемость кода.

  • Ruby — язык программирования для быстрого и удобного объектно-ориентированного программирования.

  • Perl — язык программирования общего назначения, созданный программистом Ларри Уоллом, лингвистом по образованию.