2010-11-12 63 views
3

我想知道是否有一种简单的方法来获取图像的色彩空间(即将图像加载到UIImage中)?例如,我有一个TIFF图像,我希望能够确定它是否使用RGB色彩空间。有没有简单的方法来做到这一点,而无需操纵像素数据?我知道这里有一些CGColorSpace函数,但它们似乎都没有这样做,只是创建颜色空间并操纵它们(以及更先进的功能)。确定UIImage的色彩空间

在此先感谢。

回答

13

你必须通过CGImage获得色彩空间。

@property(nonatomic, readonly) CGImageRef CGImage 

CGColorSpaceRef CGImageGetColorSpace (
    CGImageRef image 
); 

因此,要获得图像的色彩空间,你会怎么做:

CGColorSpaceRef colorspace = CGImageGetColorSpace([myUIImage CGImage]); 

,当然还有,请务必遵守你可以用下面这行的功能/性能做CG对象的get/create/copy规则。