悦读 >> 技术·运维 >> 文章查看 Dark模式的动态切换 barkzhang 2019年12月30日 13:34 浏览(1) 收藏(0) 评论(0) 分享 编辑 随着手机版的深色模式出现在大众视野,我们项目的Dark模式适配也迫在眉睫。
这里举个简单的例子,从背景颜色层面上去看怎么做文字与图片的颜色适配方法。主要用的是YUV方法:
系统自动识别主色模式是浅色,还是深色,使用颜色的YUV方法,电视系统的颜色编码 。YUV空间正是为了用亮度信号Y解决彩色电视机与黑白电视机的相容问题,使黑白电视机也能接收彩色电视信号。Y:明度,U色彩,V饱和度
Y = 0.299R + 0.587G+ 0.114B
U = -0.147R -0.289G + 0.436B
V = 0.615R - 0.515G- 0.100B
判断主题深色系,浅色系,使用Y值即可
步骤:
1、取出背景颜色的R,G,B值
2、计算出Y值,如果Y大于192 表示背景色为浅色;配上自己想要的文字色
效果如下:
延伸使用场景:banner头图自定义配置;各类产品dark模式自适应