summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--glcdgraphics/bitmap.c20
1 files changed, 9 insertions, 11 deletions
diff --git a/glcdgraphics/bitmap.c b/glcdgraphics/bitmap.c
index 0ffb039..1c5e4ed 100644
--- a/glcdgraphics/bitmap.c
+++ b/glcdgraphics/bitmap.c
@@ -560,18 +560,16 @@ void cBitmap::DrawBitmap(int x, int y, const cBitmap & bitmap, uint32_t color, u
cl = data[(yt * bitmap.Width())+xt];
if (cl != cColor::Transparent) {
if (ismonochrome) {
- DrawPixel(xt+x, yt+y, (cl == cColor::Black) ? color : bgcolor);
- } else {
- if (opacity == 255) {
- DrawPixel(xt+x, yt+y, cl);
- } else {
- alpha = (cl & 0xFF000000) >> 24;
- alpha = (alpha * opacity) / 255;
- DrawPixel(xt+x, yt+y, (cl & 0x00FFFFFF) | (alpha << 24));
- }
+ cl = (cl == cColor::Black) ? color : bgcolor;
}
- }
- }
+ if (opacity != 255) {
+ alpha = (cl & 0xFF000000) >> 24;
+ alpha = (alpha * opacity) / 255;
+ cl = (cl & 0x00FFFFFF) | (alpha << 24);
+ }
+ DrawPixel(xt+x, yt+y, cl);
+ }
+ }
}
}
}