在 golang 颜色包中,有一种方法可以从RGBA对象中获取 r,g,b,a 值:
func (c RGBA) RGBA() (r, g, b, a uint32) {
r = uint32(c.R)
r |= r << 8
g = uint32(c.G)
g |= g << 8
b = uint32(c.B)
b |= b << 8
a = uint32(c.A)
a |= a << 8
return
}
如果我要实现这个简单的功能,我会写这个
func (c RGBA) RGBA() (r, g, b, a uint32) {
r = uint32(c.R)
g = uint32(c.G)
b = uint32(c.B)
a = uint32(c.A)
return
}
r |= r << 8使用的原因是什么?
人到中年有点甜
叮当猫咪
九州编程
相关分类