I think that when you're working with PF_A8 pixmaps (only alpha channel) the ReadPixel function should return only the alpha channel with zeros for RGB.
I can mask the returned value with $FF000000, but I think it should return only the alpha value.
I can mask the returned value with $FF000000, but I think it should return only the alpha value.
Local pixmap:TPixmap=CreatePixmap(1,1,PF_A8) pixmap.WritePixel(0,0,$FF000000) Print Hex$(pixmap.ReadPixel(0,0)) If pixmap.ReadPixel(0,0) Then Print "alpha on" Else Print "alpha off" Print pixmap.WritePixel(0,0,$00000000) Print Hex$(pixmap.ReadPixel(0,0)) If pixmap.ReadPixel(0,0) Then Print "alpha on" Else Print "alpha off" 'Module BRL.Pixmap ' ' Method ReadPixel( x,y ) ' Assert x>=0 And x<width And y>=0 And y<height Else "Pixmap coordinates out of bounds" ' Local p:Byte Ptr=PixelPtr(x,y) ' Select format ' Case PF_A8 ' Return p[0] Shl 24 | $00ffffff <--------------------