Я думаю, вы должны попробовать этот метод:
- (UIColor *)colorAtPosition:(CGPoint)position
{
CGRect sourceRect = CGRectMake(position.x, position.y, 1.f, 1.f);
CGImageRef imageRef = CGImageCreateWithImageInRect(self.CGImage, sourceRect);
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
unsigned char *buffer = malloc(4);
CGBitmapInfo bitmapInfo = kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big;
CGContextRef context = CGBitmapContextCreate(buffer, 1, 1, 8, 4, colorSpace, bitmapInfo);
CGColorSpaceRelease(colorSpace);
CGContextDrawImage(context, CGRectMake(0.f, 0.f, 1.f, 1.f), imageRef);
CGImageRelease(imageRef);
CGContextRelease(context);
CGFloat r = buffer[0]/255.f;
CGFloat g = buffer[1]/255.f;
CGFloat b = buffer[2]/255.f;
CGFloat a = buffer[3]/255.f;
free(buffer);
return [UIColor colorWithRed:r green:g blue:b alpha:a];
}
или попробовать это один:
http://www.markj.net/iphone-uiimage-pixel-color/
Это довольно прохладно подход.
Ну, вы знаете, что вы новичок в программировании, периоде, а не только в iOS. Например, что вы подразумеваете под «шестнадцатеричным значением»? Это всего лишь способ представления числа ... – trojanfoe
Я хочу получить RGB и шестнадцатеричные значения цвета в каждом пиксельном пункте, когда я касаюсь. –
hex для шестнадцатеричных значений –