如何将alpha值从rgba转换为int?

问题描述 投票:-1回答:1

我有一个双精度的Alpha值,我希望将其转换为(0-255)范围内的int

c++ rgb rgba
1个回答
0
投票

您将需要知道浮点格式中可能的alpha值的范围。假设可能的浮点alpha值的范围在0.0到1.0(含)之间,那么它将起作用:

#include <cmath>

long lalpha{std::lround(alpha * 255)};

如果浮点alpha范围的上限不等于1.0,则可以将浮点alpha值除以上限以归一化为0.0到1.0之间的范围。

© www.soinside.com 2019 - 2024. All rights reserved.