2011-11-30 27 views
0

有沒有辦法找出UIImage /(或任何其他格式的圖像)是彩色還是單色?我的應用程序打算讀取UIImage(存儲在Photo應用程序中的圖像),然後根據其色彩比例(彩色圖像或灰度)對圖像執行不同的處理。如何查找UIImage是彩色還是單色?

回答

1

你在找什麼是UIImage的色彩空間。你可以找到答案here

的單色空間是

CFStringRef kCGColorSpaceGenericGray 
CFStringRef kCGColorSpaceGenericGrayGamma2_2 
CFStringRef k​CGColor​Space​Extended​Gray 

還有什麼是顏色。

0
if (CGColorSpaceGetModel(CGImageGetColorSpace(myUIImage.CGImage)) == kCGColorSpaceModelMonochrome) { 
    // Image is grayscale 
} else { 
    // Image allows color 
} 

請注意,「彩色」圖像可能仍然只使用灰色陰影!單色圖像可以以顏色支持格式存儲。

相關問題