Hi Justyn,

On Wed, Sep 24, 2008 at 8:43 AM, Justyn Butler
> Hi,
> I've been searching for the answer to this but I'm stumped. Maybe it's
> so obvious that there's no need for it to be covered in the docs, or
> perhaps I just don't know the correct terminology to search for.
> If I have a png (like a button or logo) with anti-aliasing around the
> edge and an alpha channel and I need to convert it to a gif, I can use
> the semi-flatten option under Layer->Transparency.
> This will remove any semi-transparency while conserving anti-aliasing
> and the full-transparency of the image.
> To use this filter you have to know what color background will be
> behind the image when it is placed on the page.
> With the semi-flatten tool you can only provide a solid color that the
> image will be placed over.
> Normally this works fine, but I have a situation where the background
> behind the gif fades from light to dark and consequently
> semi-flattening against a solid color is not sufficient.
> So what I want to do is semi-flatten against my known background image
> (a gradient, rather than a solid color) whilst preserving the
> fully-transparent parts of the gif.
> I am very inexperienced with image software but I'm sure there must be
> a better way than I am doing right now, which is:
> 1) png with alpha channel in top layer
> 2) known background image in bottom layer
> 3) select non-fully-transparent part of image with Select By Color
> Tool (select alpha pixel then invert selection)
> 4) Flatten image
> 5) Copy selection
> 6) Paste As New
> (Alpha to selection doesn't do the trick for step 3 because it
> discounts some semi-transparent pixels as well as transparent ones.)
I recommend:

1) Layer->Transparency->Threshold Alpha (to 1)
2) Alpha to selection
3) Copy Visible
4) Paste as New


Everything has reasons. Nothing has justification.
Ĉio havas kialojn; Neniaĵo havas pravigeron.
Gimp-user mailing list

Reply via email to