I have an image created by a graphic designer and it has about 20 layers in it. How can I make an area transparent all the way through so that wen I export the image to PNG it will have a transparent "hole" in it?
4 Answers
You could apply an identical layer mask to each of the layers. Make one layer mask, copy it, paste it, and anchor it into another layer mask, 20 times.
You could hide the background layer (if there is one), and merge the visible layers to one layer, then add one layer mask - since it's being output to a png anyway, which has no support for layers.
You could hide the background layer (if there is one), then create one new layer from visible, and add one layer mask to it. Then hide all the other layers.
The Quick And Dirty Way
- Right click any layer in the layers dialog.
- Click
Flatten Image
(the last option in the right click menu). - Optional:
- Right click the resulting layer.
- Click
Add Alpha Channel
.
- Use the eraser or selection tool to create the hole.
- Export.
-
Why the downvote? A small comment with a justification would be nice.– SocowiApr 24, 2017 at 12:26
-
Your approach kills the layers (even if only temporary), and people think this is not what the question is about? May 4, 2017 at 13:47
-
2Maybe... I assumed that wouldn't be a problem, since the OP only seemed to care about the exported PNG (quote: »wen I export the image to PNG«).– SocowiMay 4, 2017 at 14:18
Use the clear-layers
script.
clear-layers deletes the selection in several layers.
Edit/Clear layers/All
affects all layers, whileEdit/Clear layers/Visible
only affects visible layers.
You can also do it directly in the python-fu console (warning, this assumes that there is only one image loaded in Gimp):
image=gimp.image_list()[0]
for layer in image.layers:pdb.gimp_edit_clear(layer)
(Strike enter twice after the second line.)