Получение среднего RGB-цвета CGImageRef в iOS - PullRequest
1 голос
/ 02 октября 2011

Я боролся с этим пару часов и надеюсь, что у кого-то есть понимание.Я ищу способ получить средний цвет RGB UIImage 1x1.Пока что я создал CGImageRef из UIImage, но я действительно новичок в CoreGraphics, поэтому я не уверен, куда идти дальше.Любая помощь приветствуется.Спасибо!

1 Ответ

1 голос
/ 02 октября 2011

Если у вас есть CGImage, вы получите данные, позвонив по номеру

CGDataProviderRef CGImageGetDataProvider (
   CGImageRef image
);

CGImage doc

Затем вы сможете скопировать данные

CFDataRef CGDataProviderCopyData(
   CGDataProviderRef provider
);

CGDataProvider doc

Поскольку CFData совпадает с NSData, вы можете разыграть его и получить байты

- (const void *)bytes

CFData doc

NSData doc

Теперь у вас есть необработанные байты, вы можете делать с ними что угодно, используйте

CGImageAlphaInfo CGImageGetAlphaInfo (
   CGImageRef image
);
CGBitmapInfo CGImageGetBitmapInfo (
   CGImageRef image
);

для получения информациикак данные изображения хранятся в байтах, которые вы получили.

...