From 022ee523900c66a70a7a51c702be5faa9a63b629 Mon Sep 17 00:00:00 2001 From: Woochanlee Date: Tue, 19 Jul 2022 18:39:40 +0900 Subject: [PATCH] [NUI] Palette: Add an exception for 4ch(ARGB) image processing --- .../src/internal/Utility/ColorCutQuantizer.cs | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/Tizen.NUI/src/internal/Utility/ColorCutQuantizer.cs b/src/Tizen.NUI/src/internal/Utility/ColorCutQuantizer.cs index 0201b5d..c183436 100755 --- a/src/Tizen.NUI/src/internal/Utility/ColorCutQuantizer.cs +++ b/src/Tizen.NUI/src/internal/Utility/ColorCutQuantizer.cs @@ -610,7 +610,14 @@ namespace Tizen.NUI for (int i = lowIndex; i <= highIndex; i++) { int color = colors[i]; - colors[i] = 255 << 24 | (color >> 8 & 0xff) << 16 | (color >> 16 & 0xff) << 8 | (color & 0xff); + if ((color >> 24 & 0xff) == 255) + { + colors[i] = 255 << 24 | (color >> 8 & 0xff) << 16 | (color >> 16 & 0xff) << 8 | (color & 0xff); + } + else + { + colors[i] = (color >> 24 & 0xff) << 24 | (color >> 8 & 0xff) << 16 | (color >> 16 & 0xff) << 8 | (color & 0xff); + } } break; @@ -619,7 +626,14 @@ namespace Tizen.NUI for (int i = lowIndex; i <= highIndex; i++) { int color = colors[i]; - colors[i] = 255 << 24 | (color & 0xff) << 16 | (color >> 8 & 0xff) << 8 | (color >> 16 & 0xff); + if ((color >> 24 & 0xff) == 255) + { + colors[i] = 255 << 24 | (color & 0xff) << 16 | (color >> 8 & 0xff) << 8 | (color >> 16 & 0xff); + } + else + { + colors[i] = (color >> 24 & 0xff) << 24 | (color & 0xff) << 16 | (color >> 8 & 0xff) << 8 | (color >> 16 & 0xff); + } } break; } -- 2.7.4