Hi
I just use "LazPaint" to do this sort of thing. "LazPaint" is the showpiece of BGRABitmap library, which is available in OPM, great library, can do a bunch of neat stuff...
I guess it's a matter of running over your individual pixels and manipulate color and/or transparency, might even be possible with laz' inhouse TBitmap?!?
Regards Benny