My generated graphics no longer have an Alpha channel

Okay - while the image in the project was corrupted, the original was not and it still exhibits the issue.

As the topic says - my overlay generated graphics are no longer being drawing with a transparent background. Here’s the code that I use to create the composit image for a listbox:

Dim bigP As New Picture(StackedTapes2.Width, StackedTapes2.Height, 32)
Dim slen As Double = bigP.Graphics.StringWidth(Str(MyTapeRecords(x).trVolumeCount))
Dim p As New Picture(sLen + 2, 12, 32)
Dim pG As Graphics = p.Graphics
pG.TextFont = "Helvetica"
pG.TextSize = 9
pg.Bold = True
pG.ForeColor = &c00A0A000
pG.FillRoundRect(0,0,sLen + 2,12,7,7)
pG.ForeColor = &cFFFFFF00
pG.DrawString(Str(MyTapeRecords(x).trVolumeCount), 1, 9)
bigP.Graphics.DrawPicture StackedTapes2, 0, 0
bigP.Graphics.DrawPicture(p, StackedTapes2.Width - slen, StackedTapes2.Height - 12)
WMain.lbRestoreTapeSets.RowPicture(WMain.lbRestoreTapeSets.LastIndex) = bigP

The StackedTapes2.png file is correct and the image shows a transparent background in the IDE. However, upon drawing it into the listbox, it has a white background:

image

Oh yes, other transparent pngs display properly unless I add the count bug to them as above. R22r2 on Monterey and Ventura.

Any thoughts on what I may be missing?

new Picture with three parameters makes a picture with a mask instead of an alpha channel (the new documentation is wrong). Take off the 32 and see if that helps.

3 Likes

A picture’s worth 1000, so:

image

Thanks, Tim P.