注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

又一个部落格

换过很多备忘录,不知道这本怎么样!

 
 
 

日志

 
 

Color and Color Spaces  

2010-07-10 16:21:14|  分类: cocoa |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
    各种设备(显示器,打印机,扫描仪,相机)对待颜色的方式都不同。
颜色必须有一个相关的色彩空间。否则,Quartz将不知道如何解释的颜色值。此外,你需要提供一个适当的绘图目标色彩空间。
rgb:这个最熟悉不过,红绿蓝
cmyk:代表 青色,品红,黄色,黑色

设置全局alpha通道函数
void CGContextSetAlpha (    CGContextRef c,    CGFloat alpha );

清除一块区域,橡皮擦功能
void CGContextClearRect (    CGContextRef c,    CGRect rect );

下面4个函数是为了创建与设备无关的颜色空间专门设置的,比如设置某个设备的灰度==
CGColorSpaceCreateLab
CGColorSpaceCreateICCBased
CGColorSpaceCreateCalibratedRGB
CGColorSpaceCreateCalibratedGray


创建通用的几个颜色空间
kCGColorSpaceGenericGray
kCGColorSpaceGenericRGB
kCGColorSpaceGenericCMYK

创建依赖设备的函数,比如iphone中创建颜色空间可以使用下面的函数
CGColorSpaceCreateDeviceGray 
CGColorSpaceCreateDeviceRGB 
CGColorSpaceCreateDeviceCMYK 


CGColorCreate 创建CGColor

使用特定的颜色空间stroke或者fill颜色
CGContextSetRGBStrokeColor 
CGContextSetRGBFillColor  

CGContextSetCMYKStrokeColor 
CGContextSetCMYKFillColor 

CGContextSetGrayStrokeColor 
CGContextSetGrayFillColor

stroke或者fill颜色
CGContextSetStrokeColorWithColor
CGContextSetFillColorWithColor

stroke或者fill颜色使用当前的颜色空间
CGContextSetStrokeColor
CGContextSetFillColor

渲染设置函数
void CGContextSetRenderingIntent (    CGContextRef c,    CGColorRenderingIntent intent );

CGColorRenderingIntent 参数,这段太专业了,理解不了,谁知道麻烦告诉我谢谢。
kCGRenderingIntentDefault:
 默认
kCGRenderingIntentAbsoluteColorimetric:
 Maps colors outside of the gamut of the output device to the closest possible match inside the gamut of the output device. This can produce a clipping effect, where two different color values in the gamut of the graphics context are mapped to the same color value in the output device’s gamut. This is the best choice when the colors used in the graphics are within the gamut of both the source and the destination, as is often the case with logos or when spot colors are used.
kCGRenderingIntentRelativeColorimetric:
The relative colorimetric shifts all colors (including those within the gamut) to account for the difference between the white point of the graphics context and the white point of the output device.

kCGRenderingIntentPerceptual:
Preserves the visual relationship between colors by compressing the gamut of the graphics context to fit inside the gamut of the output device. Perceptual intent is good for photographs and other complex, detailed images.

kCGRenderingIntentSaturation:
Preserves the relative saturation value of the colors when converting into the gamut of the output device. The result is an image with bright, saturated colors. Saturation intent is good for reproducing images with low detail, such as presentation charts and graphs.

参考:
http://developer.apple.com/iphone/library/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/dq_paths/dq_paths.html#//apple_ref/doc/uid/TP30001066-CH211-TPXREF101
  评论这张
 
阅读(1130)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017