给定一个 css 颜色值,例如:
rgba(0, 0, 0, 0.86)
假设白色背景,如何将其转换为考虑 alpha 分量的 RGB 十六进制值?
由于 alpha 值都会减弱背景颜色和颜色值,因此类似这样的方法可以达到目的:
function rgba2rgb(RGB_background, RGBA_color)
{
var alpha = RGBA_color.a;
return new Color(
(1 - alpha) * RGB_background.r + alpha * RGBA_color.r,
(1 - alpha) * RGB_background.g + alpha * RGBA_color.g,
(1 - alpha) * RGB_background.b + alpha * RGBA_color.b
);
}
(交互式尝试:https://marcodiiga.github.io/rgba-to-rgb-conversion https://marcodiiga.github.io/rgba-to-rgb-conversion)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)