OStack程序员社区-中国程序员成长平台

标题: iOS:颜色术语和理论 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 16:08
标题: iOS:颜色术语和理论

关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。












想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。

8 年前关闭。




Improve this question




我写了以下内容并在我的模拟器上运行它只是为了好玩,同时喝着一杯晚上的咖啡;它只是从浅灰色变为深灰色,然后永远返回。

self.view.layer.backgroundColor = [UIColor lightGrayColor].CGColor;

[UIView animateWithDuration:3.0f delay:0.0f options:UIViewAnimationOptionCurveLinear | UIViewAnimationOptionRepeat animations:^
    {
        [UIView setAnimationRepeatAutoreverses:YES];
        [UIView setAnimationRepeatCount:HUGE_VAL];
        self.view.layer.backgroundColor = [UIColor darkGrayColor].CGColor;
    }
    completion:^(BOOL finished)
    {
    }];

少年的事情,我知道,但正如我所说,我这样做只是为了好玩,以便在休息和喝咖啡时有一些东西可以盯着看。

如果不是我的小表弟走上前来看着我的模拟器说:“光!”,“没有光!”,我什至都不会想到更深入地研究这个。

我说:“不,更亮,然后更暗”。

然后这个问题打动了我:

我们如何正确描述颜色变化?

使用上面的例子,我们如何:

1.) 描述颜色从一种颜色到另一种颜色的变化(比方说从“较浅”到“较深”的颜色)和颜色的一般色调、亮度、亮度、暗度、RGB、强度。

我在这里可能是错的,但也许当我们说“这更暗”并且用计算机术语时,也许应该将其描述为(例如“这种颜色的强度比另一种强,它的 R 更大,它的G是(某某),B值是(某某)......”等等。

我希望你知道我的意思。

再次使用上面的示例代码,我们如何正确描述 lightGrayColor 之间的区别?和 darkGrayColor按照:

1.) 亮度(就计算机图像而言,亮度实际上是什么?这是否意味着它在“较暗”像素之间偶尔会有更多“白色”像素,因此看起来“更亮”?)

2.) 亮度
(对于这个,如果它是一个灯泡,我会理解,但就计算机图像而言,由于它本身不是光源,因此根据计算机图像定义亮度是什么?根据图像中的颜色定义亮度是什么? )

3.) 色调(有人称其为纯色,有人称其为阴影/色调)

4.) 强度(好吧,对于人眼来说,大多数人会说“如果它更暗,那就更强烈。”
但这真的是用计算机图像/色彩理论来描述的正确方式吗?)

5.) RGB

如果您能用文字解释和 iOS 中的一些代码向我描述以上内容,根据上述术语(色调、亮度、强度)描述上述颜色(浅灰色和深灰色)之间的差异,我将不胜感激、亮度、rgb 等),以便我可以快速掌握这些术语的一般含义,就颜色而言。首先十分感谢。



Best Answer-推荐答案


Quartz2D Programming Guide详细介绍了核心图形系统支持的各种颜色模型。

最重要的细节是,理论上您可以用 RGB 模型表示的任何颜色也可以用 CMYK 或 HSB 表示。存在各种颜色模型,以便更轻松地在不同场景中概念化颜色,以及处理给定渲染设备的特性。

SO 格式中有太多细节需要描述(或者至少我不知道如何描述)。但是,总而言之,为了让您入门,这些颜色模型是:

红绿蓝相加(加 alpha channel )

加法是指从黑色开始,将原色累加成纯白色。这是背光设备的典型色彩空间。有 2n 种可能的颜色,其中 n = 位数。

也可以有一个 alpha channel ,当一种颜色绘制在另一种颜色之上时计算颜色的方式取决于混合模式,其中有很多。

青色-洋红色-黄色-开尔文减色法(加 alpha channel )

减法意味着从白色开始,去除原色直到达到黑色。这是打印设备的典型色彩空间。由于打印技术,实际上这会导致深紫色,因此添加了“开尔文”额外的黑色墨水来纠正这种情况。

与 RGB 一样,该色彩空间也支持具有多种混合模式的 alpha channel 。

色相饱和度亮度

是的另一个颜色模型。

灰度

仅允许操纵亮度,而没有色调或饱和度属性。

iOS 色彩空间

Quartz2D 系统允许您为绘图指定任何可用的颜色空间,但是在 iOS 上,您只能使用一组受支持的设备颜色空间。 (AFAIK 有一个用于屏幕,一个用于打印和灰度)。

有关更多详细信息,请参阅完整的 Quartz2D 指南——它当然值得一读,并且不像某些 Apple 文档那样枯燥(例如,您可以一边喝咖啡一边在 iPad 上阅读它;))。为此,有可用的 PDF 版本 here .

关于iOS:颜色术语和理论,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19779842/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4