вход или регистрация

GIMP — The GNU Image Manipulation Program
Гимп — бесплатный графический редактор

   

Непостоянство некоторых фильтров Layer Effects

ГлавнаяОтветы Непостоянство некоторых фильтров Layer Effects

Суть вот в чем. Некоторые из фильтров (Inner glow, Inner Shadow) адекватно работают на каком-то выделенном участке изображения или на отдельном слое, но если создать сам документ размерами с этот участок, то при использовании фильтров случается конфуз - создается пустой (!) слой эффекта без самого эффекта. Выходит, что они не могут быть приминены к документу напрямую? Или работоспособность может зависеть от чего-то еще?

Используется: Win 7, GIMP 2.6.11 (+GPS и LE).

12 ноября 2011 0 Макс Шевченко

Метки: , , , .

9 ответов

0

Пользователь #4Андрей Сидоров15 ноября 2011 в 01:52#

Я правда не понял в чем проблема. Можно как для первоклассника объяснить?)

1

Пользователь #1812Макс Шевченко15 ноября 2011 в 03:19#

Хех) По полочкам:
Создаем изображение некоторого размера. Пытаемся к нему применить фильтр Inner Glow или Inner Shadow. Получаем новый прозрачный слой, но без эффекта, то есть без внутреннего свечения или тени. Нехорошо...

Идем другим путем. Создаем изображение большего размера, чем надо бы, выделяем область того размера, какой нам нужен, копируем/вставляем новым слоем, приеняем фильтр и.... радуемся, что оно ("Тысяча чертей!!!") замечательно работает.

Вопрос банален до безобразия: шозанах? Неужели и вправду плагину Layer Effects религия не позволяет применять эффекты напрямую к свежесозданному документу? Или же это у меня такой баг?

0

Пользователь #4Андрей Сидоров15 ноября 2011 в 05:11#

Теперь ясно) Попробую на винде глянуть.

0

Пользователь #2102zend15 ноября 2011 в 08:16#

Макс Шевченко, у вас Layer Effects писаный на Python-е или тот, что писан на Tiny-Scheme?

0

Пользователь #1812Макс Шевченко15 ноября 2011 в 08:55#

Tiny-Scheme

0

Пользователь #2102zend15 ноября 2011 в 21:00#То, что нужно!

>> Получаем новый прозрачный слой, но без эффекта...
Эта фича, оказывается, проявляет себя и там, и там, вне зависимости от языка, на котором написано дополнение (но, все-таки, в Python-версии возможностей немного больше, а Tiny-Scheme ужасный язык, да).

>> Идем другим путем. Создаем изображение большего размера...
Как выяснилось, достаточно только увеличить размер холста на один пиксель по вертикали или по горизонтали. Забавно, но слой с эффектом создаётся такого же размера, как и исходный слой, но только происходит это при увеличении размера холста хотя бы на один пиксель и хотя бы с одной стороны.

Очень хорошо, что Python-версия ведёт себя так же: будет проще разбираться, но сегодня, к сожалению, меня хватило только на то, чтобы открыть исходник в текстовом редакторе, найти строку "class layerfx_inner_shadow(layerfx_base):", повтыкать на неё минуту и закрыть всё ;-) Потом подробнее изучу.

PS
А может, он так и должен работать?

0

Пользователь #1812Макс Шевченко16 ноября 2011 в 09:31#

Может и должен..) Как говорится, "Layer Effects - это не баг, это фича"

1

Пользователь #2102zend16 ноября 2011 в 20:18#

Если в скрипте который на писан на Tiny-Scheme закомментировать строку номер 295 (закомментировать означает добавить символ ";" перед строкой, то есть заменить (gimp-edit-fill shadowmask 0) на ;(gimp-edit-fill shadowmask 0)), то "Inner Shadow" отрабатывает корректно вне зависимости от того увеличен размер холста на пиксель или нет.

В скрипте написанном на Python-e следует закомментировать сроку номер 1407 (в Python-e символ комментария это "#", а не ";").

Причин такого поведения пока не выяснял, другие фильтры пока не изучал по той же причине, что и в прошлый раз ;-)

0

Пользователь #1812Макс Шевченко16 ноября 2011 в 23:13#

Спасибо за информацию, zend, попробуем-с..)

Чтобы участвовать в обсуждении вы должны войти или зарегистрироваться.

Информация по вопросу

Задать вопрос
13865+0
Комментариев