Welcome, Guest |
You have to register before you can post on our site.
|
Latest Threads |
Is there any version wher...
Forum: Older Gimp versions (2.8, 2.6....)
Last Post: HavingTooMuchFun
2 hours ago
» Replies: 0
» Views: 37
|
How to make a watermark o...
Forum: General questions
Last Post: kyolim
Yesterday, 10:05 PM
» Replies: 5
» Views: 14,019
|
Linux command that does e...
Forum: Other graphics software
Last Post: rich2005
Yesterday, 06:06 PM
» Replies: 1
» Views: 350
|
reliable Gimp 2.10.38 dow...
Forum: Older Gimp versions (2.8, 2.6....)
Last Post: denzjos
Yesterday, 05:20 PM
» Replies: 2
» Views: 277
|
Batch Color Saturation
Forum: Extending the GIMP
Last Post: rich2005
Yesterday, 07:53 AM
» Replies: 15
» Views: 11,903
|
Photo play-time
Forum: Gallery
Last Post: Ofnuts
Yesterday, 07:32 AM
» Replies: 24
» Views: 21,755
|
BIMP plugin for GIMP 3.10
Forum: Extending the GIMP
Last Post: firefly
09-12-2025, 11:53 PM
» Replies: 2
» Views: 640
|
pl_stroke_arrows GIMP 3.0...
Forum: Extending the GIMP
Last Post: Scallact
09-12-2025, 04:03 PM
» Replies: 0
» Views: 292
|
How do you make text circ...
Forum: General questions
Last Post: rich2005
09-12-2025, 07:18 AM
» Replies: 12
» Views: 3,375
|
New Install, Black Screen...
Forum: OSX
Last Post: akhrameev
09-11-2025, 02:32 PM
» Replies: 3
» Views: 3,043
|
|
|
Issues trying to Compose an image with masked channels |
Posted by: pronay - 05-10-2023, 10:34 PM - Forum: Scripting questions
- Replies (5)
|
 |
Hello,
This is my first time trying to write a Python script in GIMP so I am still learning my way around this stuff.
I am trying to implement a script by which I can perform the following steps:
1. Decompose an Image into RGBA channels (Colors->Components->Decompose->Color Model: RGBA)
2. Recompose an Image using R,G channels with B and A using Mask Value of 255 (Colors->Components->Compose->Color Model: RGBA, B and A use 255 mask value)
To do this in Python, I am attempting the following steps:
Code:
decomposed = pdb.plug_in_decompose(img, drawable, "RGBA", 0)
gimp.message("Performed Decompose")
# Grab the name of the original image
fileNameWithExt = pdb.gimp_item_get_name(draw)
fileNameNoExt = fileNameWithExt.split('.')
# Create the layers
gimp.message("Creating new Layers")
gimp.message("Setting up Red Layer")
layerR = pdb.gimp_layer_new_from_drawable(pdb.gimp_image_get_active_layer(decomposed[0]), decomposed[0])
layerName = fileNameNoExt[0] + "_RGBA_Red"
pdb.gimp_item_set_name(layerR, layerName)
pdb.gimp_image_insert_layer(decomposed[0], layerR, None, 0)
gimp.message("Setting up Green Layer")
layerG = pdb.gimp_layer_new_from_drawable(pdb.gimp_image_get_active_layer(decomposed[1]), decomposed[1])
layerName = fileNameNoExt[0] + "_RGBA_Green"
pdb.gimp_item_set_name(layerG, layerName)
pdb.gimp_image_insert_layer(decomposed[1], layerG, None, 1)
gimp.message("Setting up Blue Layer")
layerB = pdb.gimp_layer_new_from_drawable(pdb.gimp_image_get_active_layer(decomposed[2]), decomposed[2])
layerName = fileNameNoExt[0] + "_RGBA_Blue"
pdb.gimp_item_set_name(layerB, layerName)
pdb.gimp_image_insert_layer(decomposed[2], layerB, None, 2)
gimp.message("Setting up Alpha Layer")
layerA = pdb.gimp_layer_new_from_drawable(pdb.gimp_image_get_active_layer(decomposed[3]), decomposed[3])
layerName = fileNameNoExt[0] + "_RGBA_Alpha"
pdb.gimp_item_set_name(layerA, layerName)
pdb.gimp_image_insert_layer(decomposed[3], layerA, None, 3)
gimp.message("Creating Layer Mask")
channelB = pdb.gimp_layer_create_mask(layerB, 1)
channelA = pdb.gimp_layer_create_mask(layerA, 1)
gimp.message("Inserting Channels to Decomposed Images")
pdb.gimp_image_insert_channel(decomposed[2], channelB, None, 0)
pdb.gimp_image_insert_channel(decomposed[3], channelA, None, 0)
# Now compose the new image into the target export image
gimp.message("Starting Compose Step for Output")
OutImage = pdb.plug_in_compose(decomposed[0], draw, decomposed[1], decomposed[2], decomposed[3], "RGBA")
gimp.message("Done with Composing Output")
However, when I run this script, I see that my output image is the exact same as the input. This means that the 255 masks are not being applied to the output composed image.
Is the approach I am using correct here? How should I be applying the 255 Mask Value to the B and A channels similar to the settings available for the Compose option in the UI?
Any advice here would be much appreciated.
|
|
|
|