前言
在开发中,UI在设计稿中标注的颜色都是类似RGB或者HEX颜色值(#FF0000红色),但是标注后面还有透明度比如30%,下面我们就来看看透明度怎么转换为16进制值。
颜色简介
程序中颜色值通常遵循RGB/ARGB标准,使用时通常直接使用RGB255类似的值或者以16进制#字符串表示。
常用的颜色表示有: RGB/ARGB/RRGGBB/AARRGGBB
其中ARGB依次代表透明度(alpha),红色(red),绿色(green),蓝色(blue)。例如颜色值#FF99CCBB,其中FF是透明度,99是红色值,CC是绿色值,BB是蓝色值。透明度(通常称为alpha值)在图形中是一个介于0(完全透明)和1(完全不透明)之间的值。在RGBA颜色模型中,alpha值用于表示颜色的透明度。
透明度换算
透明度
1.透明度分为256阶(0~255),用16进制表示为(00~FF)。透明就是0阶,不透明就是255阶,如果50%透明就是127阶(256的一半是128,但因为是从0开始,所以实际上是127)2.透明度和不透明度是两个概念,他们加起来是1或者100%,ARGB中透明度表示的是不透明度。
如何换算
比如UI给出的颜色为#FFFFFF,透明度40%。换算过程如下:1.将透明度转换成不透明度(不透明度为60%)2.将不透明度乘以255(得到153)3.将计算结果转换成16进制(不透明度为99)4.将不透明度拼接成ARGB格式(#99FFFFFFFF)
常用的透明度
透明度 |
16进制表示 |
100% |
00 |
95% |
0D |
90% |
1A |
85% |
26 |
80% |
33 |
75% |
40 |
70% |
4D |
65% |
59 |
60% |
66 |
55% |
73 |
50% |
80 |
45% |
8C |
40% |
99 |
35% |
A6 |
30% |
B3 |
25% |
BF |
20% |
CC |
15% |
D9 |
10% |
E6 |
5% |
F2 |
0% |
FF |
转换公式:透明度*255 转 16进制