I'm attempting to create a filter or mask that contains some
"effect" (like a Gaussian Blur filter or a Desaturation), and applies
this effect to the layer(s) below it, instead of only to the images
contained in that exact layer itself. I hope that makes sense.
I have browsed the GIMP documentation, tutorials on the site, some
general Google searches, and this newsgroup, but I did not find
anything quite like what I'm after. The closest I've found is using
Layer Masks to do transparency between layers.
The exact reason I would really like this: I have an GIMP image with
multiple images. I plan on creating multiple TIFF exported images from
this multilayered GIMP image, each TIFF using one of the backgrounds.
This is because all other elements of the image stay the same, just
the background changes depending on the TIFF I want to export. I need
each of the backgrounds to have a blur, and parts of the background
(only sections where text will be) to be Desaturated and darkened. I
was hoping to have some way to apply these filters once and then
"trickle down" to whatever background I select (by (un)hiding using
the "eye" icon). This would allow me to easily modify the blur,
desaturation, and darkening effects in the future as needed, because
this work will likely go through many approval steps with other people
asking for tweaking and other modifications to be done to it before
final approval. If I could not do this "trickle down", and instead had
to apply each of these effects permanently to each of the backgrounds,
it would be a major pain and waste of time to make these future
modifications.
This is unfortunately a feature that will determine whether I continue
to use GIMP in my business, or fork out the $$ for Photoshop or
another proprietary/commercial image editor. I am a supporter of Open
Source, so needless to say, I don't want it to come to that. Thank you
for your time.
Well, assuming it is, I have been trying to think of ways around it.
Would it be theoretically possible to create a macro (a "Script-Fu"?)
that would take a layer/channel with some greyscale content and apply
that to a number of other layers in the image upon command? Sort of
like an Alpha Channel in how it stores a simple image, and is then
applied to the rest of the image to create transparency. Only in this
case, I would have a layer (or channel?) that contained a blacked-out/
whited-out region that the Script-Fu would then treat as a selection
area to apply a specified filter on (such as Gaussian Blur, or
Desaturate, or Darken by 50%... etc.). To simplify, perhaps the Script-
Fu would apply this specified filter on all visible layers, allowing
me to do the Gaussian Blur, etc. on multiple layers at once?
Also, assuming the complete lack of Filter Layers is true, I'm
astonished. This seems like such a critical feature for a professional
usage. All these years I'd been reading people defending GIMP from
Photoshop fanatics, claiming it was truely comparable. But if this
feature is not possible in any way, I fail to see how GIMP can really
be in the same league as PS, and the GIMP defenders were probably just
fanatics in their own right. I hope I'm wrong.
>Hello, all. I am a "slightly above beginner" on GIMP.
>
>I'm attempting to create a filter or mask that contains some
>"effect" (like a Gaussian Blur filter or a Desaturation), and applies
>this effect to the layer(s) below it, instead of only to the images
>contained in that exact layer itself. I hope that makes sense.
I don't use GIMP-GAP, myself, but here's a bit of doc from
one of its pieces (gap-filterall-db-browser):
First of all, you need a multilayered Image.
You can use "<Image>/Video/Frames to Image"
to create one from a series of frames,
or duplicate the backround layer of a single layered image
(Press Ctrl-C within the layers dialog window N-times)
Then call "Filter all Layers" from wihin the multilayer image.
You'll get a window similar to the PDB-Browser, that shows
all available plug-ins in a listbox (and informations about
the selected plug-in on the right side).
Note: The listbox does not show the full PDB, but
only those plug-ins that are capable to run under control
of the "Filter all Layers" plug-in.
Plug-in-gap-modify may also be of use to you.
I have GIMP-GAP installed, but I haven't actually used it.
Let us know if a) you try any of this, and b) it works.
--
Arthur T. - ar23hur "at" intergate "dot" com
Looking for a z/OS (IBM mainframe) systems programmer position
I just tried the GIMP-GAP plugins (also upgraded to GIMP 2.3.18 in the
process). Yes, the GAP Frames Modify plugin will do the problem,
although it does take more steps than I'd ideally wanted. What I do to
use the Frames Modify plugin is:
(1) Make visible all of the backgrounds I want to modify, and hide all
other layers.
(2) Using the rectangle selector, draw the area I want to desaturate
(since only parts where I'll put text will be desaturated, the rest
full color).
(3) Open Video->Frames Modify
(4) In the dialog box, set the "Function" to "Apply filter on layers"
(5) Set "Layer Selection" to "All Visible". "OK".
(6) Another dialog box. This one, select "plug-in-wr-huesat". Apply.
(7) Now choose Desaturation options (Saturation at -100), Apply. Now
all visible layers should have a area that is desaturated.
(8) make sure to deselect the layers, leaving no selected areas. This
is so the next filter applies to the entire layer, not just part of
it.
(9) Repeat 3-5, Now select "plug-in-gaus" for a Gaussian Blur. Apply.
(10) The Guassian Blur dialog pops up. Set as desired. Apply/OK.
There is an error dialog that pops up when I OK the Frames Modify,
about to go to step 6: "Procedure 'gimp-progress-init' has been called
with a wrong value type for argument 'gdisplay' (#2). Expected
GimpDisplayID, got GimpInt32."
But otherwise, all is well. I'll next work on creating a script-fu to
automate all of these together.