gpt4 book ai didi

iphone - 为什么[UIColor白色]和黑色的亮度相等

转载 作者:行者123 更新时间:2023-12-03 16:04:05 25 4
gpt4 key购买 nike

让我向您展示获取三种 UIColor 的色调、饱和度和亮度的一些结果。

[[UIColor redColor] getHue:&hue
saturation:&saturation
brightness:&brightness
alpha:&alpha];

hue = 1.0 saturatino = 1.0 brightness = 1.0 alpha = 0.0

[[UIColor whiteColor] getHue:&hue
saturation:&saturation
brightness:&brightness
alpha:&alpha];

hue = 0.0 saturatino = 0.0 brightness = 0.0 alpha = 0.0

[[UIColor blackColor] getHue:&hue
saturation:&saturation
brightness:&brightness
alpha:&alpha];

hue = 0.0 saturatino = 0.0 brightness = 0.0 alpha = 0.0

谁能解释一下为什么白色和黑色的色调、饱和度、亮度相等?为什么 alpha 等于 0?

我想要在我的项目中做的是通过改变给定颜色的亮度来生成“较暗”的颜色:

brightness = brightness * 0.8;

它适用于任何颜色,但它会从白色产生黑色。 (虽然我希望是灰色的)。

最佳答案

原因是,+whiteColor+blackColor 均返回灰度颜色空间中的颜色,而灰度颜色空间与 HSB 颜色空间不兼容。因此,-getHue:saturation:brightness:alpha:实际上并没有修改参数。我想您会发现在调用该方法之前将它们全部设置为 0.0 。如果您检查 -getHue:saturation:brightness:alpha: 的返回值,它会告诉您是否已成功转换为 HSB。

关于iphone - 为什么[UIColor白色]和黑色的亮度相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15130949/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com