2013-12-03 4 views
0

Я хочу получить цветовую схему, например RGB или CMYK, изображения в UIImageView. Как я могу это сделать?Как я могу получить цветовую схему UIImage?

+1

Что вы имеете в виду по цветовой гамме? Просьба представить более подробную информацию на ваш вопрос. – Cutetare

+0

Голосование для повторного открытия. То, что спрашивает ОП, ясно (достаточно). Я также редактировал его, прежде чем он был закрыт. Мой ответ должен помочь другим понять, какое свойство изображения запрашивает ОП (его цветовая модель). – justin

+0

@justin также достаточно ясно, что OP не показывает никаких ** попыток решить эту проблему – MikroDel

ответ

2

В простейшем случае вы можете получить доступ к цветовой модели, обратившись к UIImageView > .image > .CGImage > ColorSpace > Model.

// briefly illustrating the common path, with no error checking: 
UIImageView * imageView = ...; 
UIImage * image = imageView.image; 
CGImageRef cgImage = image.CGImage; 
CGColorSpaceRef space = CGImageGetColorSpace(cgImage); 
CGColorSpaceModel model = CGColorSpaceGetModel(space); 

if (kCGColorSpaceModelRGB == model) { 
    ... 
} 
else if (kCGColorSpaceModelCMYK == model) { 
    ... 

Сам UIImageView сам представляет или отображает изображение. UIImage s могут поддерживаться различными источниками (например, CGImage или CIImage), и они могут представлять множество различных типов данных/изображений. В зависимости от ваших изображений вам может потребоваться поддержка дополнительных случаев.

+1

Большое спасибо! Очень полезно – STBY

Смежные вопросы