summaryrefslogtreecommitdiff
path: root/glcdgraphics/extformats.c
diff options
context:
space:
mode:
authormrwastl <mrwastl@users.sourceforge.net>2011-06-17 23:15:55 +0200
committermrwastl <mrwastl@users.sourceforge.net>2011-06-17 23:15:55 +0200
commitac638a71c925da26a74abfdb1c8a108dcaacae6e (patch)
tree3f753ab08e62fc2069b14097562de60e158f509e /glcdgraphics/extformats.c
parent5a1e0240ba2083f96df6237fdeb8ff783ef13fe0 (diff)
downloadgraphlcd-base-ac638a71c925da26a74abfdb1c8a108dcaacae6e.tar.gz
graphlcd-base-ac638a71c925da26a74abfdb1c8a108dcaacae6e.tar.bz2
add support for alpha channel
Diffstat (limited to 'glcdgraphics/extformats.c')
-rw-r--r--glcdgraphics/extformats.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/glcdgraphics/extformats.c b/glcdgraphics/extformats.c
index c69ee13..75d3693 100644
--- a/glcdgraphics/extformats.c
+++ b/glcdgraphics/extformats.c
@@ -112,7 +112,8 @@ bool cExtFormatFile::Load(cImage & image, const string & fileName)
if ( isMatte && pix->opacity == MaxRGB ) {
bmpdata[iy*width+ix] = cColor::Transparent;
} else {
- bmpdata[iy*width+ix] = (uint32_t)( 0xFF000000 | (int(pix->red * 255 / MaxRGB) << 16) | (int(pix->green * 255 / MaxRGB) << 8) | int(pix->blue * 255 / MaxRGB));
+ //bmpdata[iy*width+ix] = (uint32_t)( 0xFF000000 | (int(pix->red * 255 / MaxRGB) << 16) | (int(pix->green * 255 / MaxRGB) << 8) | int(pix->blue * 255 / MaxRGB));
+ bmpdata[iy*width+ix] = (uint32_t)( (int(255 - (pix->opacity * 255 / MaxRGB)) << 24) | (int(pix->red * 255 / MaxRGB) << 16) | (int(pix->green * 255 / MaxRGB) << 8) | int(pix->blue * 255 / MaxRGB));
}
++pix;
}