通常,颜色由3色组成:红色(R),绿色(G),蓝色(B),每种颜色通常用一字节表示,如此,一个颜色值需要3个字节才能合成,此为8:8:8表示方式。
而采用5:6:5表示方式时,只需2个字节则足以合成一个颜色(5+6+5=16),当然,最后也要转成8:8:8方式。转换方式如下:
2^5:2^6:2^6 1:1:1
------------ = ------
2^8:2^8:2^8 8:4:8
其实就是简单的比例问题,采用5:6:5方式时,红色值缩小了8倍,绿色值缩小了4倍,蓝色值缩小了8倍,所以合成的时候,要分别增大各自的倍数。
Color.rgb(red<<3,green<<2,blue<<3);
本文出自 “whatever957” 博客,请务必保留此出处http://whatever957.blog.51cto.com/6835003/1705963
原文:http://whatever957.blog.51cto.com/6835003/1705963