Я 3 дня искал документацию о python-fu для GIMP 2.8, и тот, который я нашел, отличный, но устарел.
Итак, я застрял на этом месте: я создал 3 цветовых канала и хочу добавить каждый из них в качестве маски к каждому из 3 слоев.
Что я сделал до сих пор: (вручную загрузил изображение и создал 3 цветовых канала для света, средних тонов и теней);
Получите его идентификатор с помощью:
ima = gimp.image_list()[0]
Получите идентификатор слоя и продублируйте слой 3 раза:
layn = pdb.gimp_layer_new_from_visible(ima, ima, 'dup')
pdb.gimp_image_insert_layer(ima, layn, None, -1)
Теперь у меня есть изображение с тремя слоями, и я хочу добавить маску слоя к каждому из трех слоев, но из трех разных цветовых каналов... но я не знаю, как это сделать.
API, похоже, не поддерживает создание маски непосредственно из случайного канала. Но вы можете создать маску из выделения, поэтому:
Скопируйте свой канал в подборку
pdb.gimp_image_select_item(image,CHANNEL_OP_REPLACE,channel)
Создайте маску
mask=layer.create_mask(ADD_SELECTION_MASK)
Добавьте маску к слою:
layer.add_mask(mask)
ксеноид