0
例如,我有一個UIImage,我想知道圖像位置(300,200)是哪種顏色,我該怎麼辦?謝謝。如何在UIImage中獲取指定點的顏色?
例如,我有一個UIImage,我想知道圖像位置(300,200)是哪種顏色,我該怎麼辦?謝謝。如何在UIImage中獲取指定點的顏色?
調用此方法的形式uitouch移動..
-(void) getPixelColorAtLocation:(CGPoint)point
{
unsigned char pixel[4] = {0};
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGContextRef context = CGBitmapContextCreate(pixel, 1, 1, 8, 4, colorSpace, kCGImageAlphaPremultipliedLast);
CGContextTranslateCTM(context, -point.x, -point.y);
[self.layer renderInContext:context];
// NSLog(@"x- %f y- %f",point.x,point.y);
CGContextRelease(context);
CGColorSpaceRelease(colorSpace);
NSLog(@RGB Color code "%d %d %d",pixel[0],pixel[1],pixel[2]);
}
你可以得到觸摸點的顏色代碼RGB COLR組合。 試試吧
檢查此問題 - http://stackoverflow.com/questions/448125/how-to-get-pixel-data-from-a-uiimage-cocoa-touch-or-cgimage-core-graphics – rishi
你應該嘗試亞光在這裏描述的技術:http://stackoverflow.com/questions/1042830/retrieving-a-pixel-alpha-value-for-a-uiimage - 當然,使用顏色目標位圖。好處是您不需要分配和繪製整個圖像來訪問一個像素的值。 – justin