From 8bec89611fdf947a3f0c2ace1308c188a2922b72 Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Sun, 11 Mar 2018 23:57:41 +0100 Subject: [PATCH] Trying to fix alpha channel issue by providing upper 8 bits set in QImage. --- src/laybasic/laybasic/layBitmapsToImage.cc | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/laybasic/laybasic/layBitmapsToImage.cc b/src/laybasic/laybasic/layBitmapsToImage.cc index 6c48a34fb..3a7f18ca4 100644 --- a/src/laybasic/laybasic/layBitmapsToImage.cc +++ b/src/laybasic/laybasic/layBitmapsToImage.cc @@ -527,7 +527,8 @@ bitmaps_to_image_rgb (const std::vector &view_ops_in, masks.erase (masks.begin (), masks.end ()); - uint32_t needed_bits = 0xffffff; // alpha channel not needed + const uint32_t needed_bits = 0x00ffffff; // alpha channel not needed + const uint32_t fill_bits = 0xff000000; // fill alpha value with ones uint32_t *dptr = buffer; uint32_t ne_mask = (1 << (y % slice)); for (unsigned int i = 0; i < view_ops.size (); ++i) { @@ -583,10 +584,10 @@ bitmaps_to_image_rgb (const std::vector &view_ops_in, for (unsigned int x = 0; x < width; x += 32, ++i) { lay::color_t y[32] = { - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, + fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, + fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, + fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, + fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, fill_bits, }; lay::color_t z[32] = {