在Javascript中将rgba值转换为一个整数

2024-01-13

我已经可以将 32 位整数转换为其 rgba 值,如下所示:

pixelData[i] = {
        red: pixelValue >> 24 & 0xFF,
        green: pixelValue >> 16 & 0xFF,
        blue: pixelValue >> 8 & 0xFF,
        alpha: pixelValue & 0xFF
    };

但我真的不知道如何扭转它。


要反转它,您只需将字节组合成一个整数即可。 只需使用左移并添加它们,它就会起作用。

var rgb = (red << 24) + (green << 16) + (blue << 8) + (alpha);

或者,为了更安全,您可以首先将它们与 0xFF 进行“与”:

var r = red & 0xFF;
var g = green & 0xFF;
var b = blue & 0xFF;
var a = alpha & 0xFF;

var rgb = (r << 24) + (g << 16) + (b << 8) + (a);

(您可以使用按位或|代替+在这里,结果将是相同的)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Javascript中将rgba值转换为一个整数 的相关文章

随机推荐