>There seems to be a lot of confusion around the context in which word "transparent" applies to an imgCanvas (using gdiPlusX).
>
>It seems that the transparency means "the amount of the previously rendered pixels on the canvas that will seep through any new drawing on that same canvas". I need the canvas itself to be transparent, so I can have two or three canvases overlaid, made visible/invisible at will, and if need be, show some VFP controls beneath them (maybe a label or a background shape, nothing clickable, of course).
>
>After googling this for hours, I'm at the end of my wits.
The solution is to not use imgcanvas at all (at least that was my solution). Instead, have an image object ready,
oBMP = .BITMAP.New(toImg.WIDTH, toImg.HEIGHT)
oGFX = .Graphics.FromImage(oBMP)
...do your drawing here in oGfX
oBMP.SAVE(toImg,.Imaging.ImageFormat.png)
The trick here is that oBmp can save to an image object, which I discovered accidentally, while looking for something else in system.drawing.prg.