1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 17:37:37 +00:00

LibGfx/ILBMLoader: Add support for transparent color

This commit is contained in:
Nicolas Ramz 2024-01-05 17:11:05 +01:00 committed by Andrew Kaster
parent fc5b6e4dda
commit 5e7e98cd3c

View file

@ -163,6 +163,8 @@ static ErrorOr<RefPtr<Gfx::Bitmap>> chunky_to_bitmap(ILBMLoadingContext& context
color = Color(chunky[index], chunky[index + 1], chunky[index + 2]);
} else if (chunky[index] < context.color_table.size()) {
color = context.color_table[chunky[index]];
if (context.bm_header.mask == MaskType::HasTransparentColor && chunky[index] == context.bm_header.transparent_color)
color = color.with_alpha(0);
} else if (has_flag(context.viewport_mode, ViewportMode::HAM)) {
// Get the control bit which will tell use how current pixel should be calculated
u8 control = (chunky[index] >> context.cmap_bits) & 0x3;