我想改变任何给定颜色的亮度(注意:我不是在谈论屏幕亮度),我看过 Color 类,它有几种方法可以在RGB和RGB之间进行转换HSV,我是这个领域的新手。首先,如果红色的亮度值是用RGB(#FF0000)表示的话,如何更改红色的亮度?
答案 0 :(得分:5)
最简单的方法是将颜色转换为HSL(不是HSV!它们是不同的 - 请参阅http://en.wikipedia.org/wiki/HSL_and_HSV)并更改L分量 - 增加以使其更亮,减少以使其更暗。
答案 1 :(得分:3)
考虑到你所说的是亮度(颜色增强)而不是亮度(白色量),你的模型是HSV(又名HSB),而不是HSL。< / p>
在快速简报中,如果你在HSV上增强V通道,让我们说......一些蓝色,你有一个&#34;更多的蓝色&#34;颜色。如果你在HSL模型上增强L通道,你就会有更多的清晰和清洁的#34;蓝色。
android.graphics.Color类内置了对HSV模型的支持。使用 Color.colorToHSV() 和 Color.HSVToColor() 编辑亮度值(或色调,或者饱和度,如果你愿意的话。)
在HSV模型上,H(色调)定义基色,S(饱和度)控制灰度量,V控制亮度。因此,如果你同时增强V并减少S,你可以获得更多的亮度。
答案 2 :(得分:2)
首先,你需要记住两件事 -