Convert full RGBA to grayscale

rem listbox 10* addrow =" "
myicon= New Picture(100,40,32)
myicon.Graphics.DrawPicture picture,40,0,60,40,0,0,bogenneu2.Width,bogenneu2.Height
listbox1.RowPicture(1) =myicon

More details on the MBS solution -

Using the MBS Picture.ScaleImageAndMaskMBS() function properly results in an image with a correctly maintained mask/alpha.

It’s now down to the GrayScaleMBS() function.

Two issues with MBS -

GrayScaleMBS() loses the alpha/mask on all three platforms
LinuxIconMBS.FileIcon() is messing up the alpha/Mask when scaling such that it’s not processed properly by Xojo’s ListBox.RowPicture().

Create a new picture in Xojo, draw the icon picture there scaled and than use the new picture.

This is noted in the documentation (and isn’t new)

Tried that. It seems that even using CopyPictureAndAlphaMBS() under Linux is not retaining the Alpha channel - or maybe I’m misunderstanding the procedure you’re describing.

Except I’m not using a mask, but PNG files with an alpha channel. There is no mask to copy.