The tRNS metadata is valid for color types 0, 2 and 3, so let's collect it in each of those cases. This ensures that we produce a bitmap with an alpha channel if needed.
@@ -834,6 +834,8 @@ static bool process_PLTE(ReadonlyBytes data, PNGLoadingContext& context)
static bool process_tRNS(ReadonlyBytes data, PNGLoadingContext& context)
{
switch (context.color_type) {
+ case 0:
+ case 2:
case 3:
context.palette_transparency_data.append(data.data(), data.size());
break;