如何设置CGColor颜色值

来源:互联网 发布:淘宝说在衣服质检 编辑:程序博客网 时间:2024/06/06 00:39

通过Core Library的文档,我们知道创建颜色有这么几个方法:

CGColorCreate
CGColorCreateCopy
CGColorCreateGenericGray
CGColorCreateGenericRGB
CGColorCreateGenericCMYK
CGColorCreateCopyWithAlpha
CGColorCreateWithPattern

再来看一下CGColorCreate

CGColorRef CGColorCreate (

CGColorSpaceRef colorspace,

const CGFloat components[]

);

 

我们通过CGColorCreate就可以创建颜色。既然我们要用RGB表示颜色,那么colorspace这个参数我们就可以使用CGColorSpaceCreateDeviceRGB(),而我们主要来探讨components这个参数。

 

这个参数是一个数组,带有4个数值:

 

float color[]={红色分量, 绿色分量, 蓝色分量, alpha分量};

 

这4个数值都是0-1区间,0表示黑(不发光),数字越大这种颜色的光线越强,alpha分量表示透明度。比如{1.0, 0, 0,1.0}就是纯红色而且完全不透明


。。。。。。。。。。。。。

要在屏幕上显示颜色,通常需要使用RGB去表示。R表示红、G表示绿、B表示蓝。CMYK也是用于表示颜色的方法,但是由于CMYK是用于印刷,因此RGB范畴内的颜色有一些是无法用CMYK表示的(比如比较亮的萤光色)。它们之间的差别主要是RGB表示的是发光物体的颜色(屏幕本身是发光直射到眼睛的),而CMYK表示的是反射光(比如纸上的图,是别的物体比如太阳或者灯发光,通过它反射到我们眼睛里,我们才看到颜色)。这里面比较深入的内容如果你有兴趣请你去搜索。

如果你了解一点web上取颜色的方法,你应该知道web中颜色的数值是这样表示的:

#FFCC00 表示一种亮黄,前两位FF是红色分量,CC是绿色分量,00是蓝色分量。00表示黑,也就是没有这个颜色,FF表示这个颜色的最大值。这个数字越小越暗(屏幕不发光),越大越亮(光越强)。



转自:http://www.cocoachina.com/b/?p=155

0 0
原创粉丝点击