Transparency

I would like to apply a transparency effect to a splash graphic of 50%.
I tried putting another canvas over the top and playing with the HSV but no luck.
I have MBS plugins as well is there uneasier way of doing this?

Check OverlayMBS class.

Hello Martin, I put the below code in the Event Handler “Activate” with no Plugins, I make one image in PNG with 50% Opacity and works fine for me.

[code]const CocoaLib = “Cocoa.framework”
soft declare function NSClassFromString lib CocoaLib (aClassName as CFStringRef) as Ptr
soft declare function colorMaker lib CocoaLib selector “colorWithCalibratedWhite:alpha:” (NSColorClass As Ptr, white As Single, alpha As Single) As Ptr
soft declare sub setBGColor lib CocoaLib selector “setBackgroundColor:” (NSWindow As Ptr, backgroundColor As Ptr)
soft declare sub setOpaque lib CocoaLib selector “setOpaque:” (NSWindow As Ptr, flag As Byte)

dim w As Ptr = Ptr(Window5.Handle)

setOpaque(w, 0) //0 = off, 1 = on

setBGColor(w, colorMaker(NSClassFromString(“NSColor”), 1, 0))[/code]

Alternative 1: If the image is solid, create a new picture of the same dimensions, fill it with 50% grey and use picture.applyMask to set it as a mask of the image.

Alternative 2: Use a canvas and before you draw the picture set the transparent property of the canvas to 50, don’t forget to set it back to 0, otherwise everything drawn after will also be transparent.

Thanks, all good suggestions.

Sam, your Alternative 2 might be useful elsewhere in my program but I don’t see where you set the transparency value??

Canvas1.transparent = Boolean

In the Paint event graphics.transparent, my bad it’s graphics.transparency.