• Android 颜色透明度换算


    每次开发的时候,UI在设计图中标注的颜色都是类似于#FF0000(红色),这倒没什么,但是呢后面却标注了30%的透明度,这下抓狂了,透明度怎么计算?不用着急,不用你算,收藏我这篇文章即可。

    颜色简介

    Android中的颜色值通常遵循RGB/ARGB标准,使用时通常以“#”字符开头,以16进制表示。

    常用的颜色值格式为:

    RGB

    ARGB

    RRGGBB

    AARRGGBB

    其中,ARGB 依次代表透明度(alpha)、红色(red)、绿色(green)、蓝色(blue)。以颜色值 #FF99CC00 为例,其中,FF 是透明度,99 是红色值, CC 是绿色值, 00 是蓝色值。

    透明度

    透明度分为256阶(0-255),计算机上用16进制表示为(00-ff)。透明就是0阶,不透明就是255阶,如果50%透明就是127阶(256的一半当然是128,但因为是从0开始,所以实际上是127)。
    透明度 和 不透明度 是两个概念, 它们加起来是1,或者100%.
    ARGB 中的透明度alpha,表示的是不透明度。
    如何换算

    UI给出的颜色是#FFFFFF,透明度为40%。

    换算过程:

    将透明度转换成不透明度(转换方式参考“透明度”,第2条) 。不透明度为60%
    不透明度乘以255。 我们得到结果:153
    将计算结果转换成16进制。得到最终的不透明度:99
    将不透明度和颜色值拼接成ARGB格式。得到最终的颜色值: #99FFFFFF
    干货

    我知道大家都在等最终的结果,肯定不会去自己算的,那就来点实际吧

    透明度 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
    说明:如果UI给出16进制的颜色值,那么透明度就按照上面的表格对应,将对应的透明度的16进制添加值UI给定的颜色值前,即可大功告成!!!还是说个例子吧,免得不理解.

    例子:

    UI给出的颜色值为#FF0000,透明度30%。

    结合上表,30%的透明度16进制的值为 B3,那么最终的颜色值为 #B3FF0000.

  • 相关阅读:
    LightOJ 1239
    LightOJ 1166 Old Sorting 置换群 或 贪心 水题
    vijos 1243 生产产品 DP + 单调队列优化
    POJ 3348 Cows 凸包 求面积
    POJ 1389 Area of Simple Polygons 扫描线+线段树面积并
    POJ 1151 Atlantis 扫描线+线段树
    POJ 1228 Grandpa's Estate 凸包 唯一性
    bzoj 3622 DP + 容斥
    Uva5211/POJ1873 The Fortified Forest 凸包
    POJ 2007 Scrambled Polygon 极角序 水
  • 原文地址:https://www.cnblogs.com/caoxinyu/p/10568549.html
Copyright © 2020-2023  润新知