重複の可能性:
UIImage (Cocoa Touch) または CGImage (Core Graphics) からピクセル データを取得する方法は?
UIImageのピクセルカラーを取得
ユーザーが画像から色を選択できるシナリオがあります。たとえば、以下のようなものです。
画像上でのユーザーのタップ位置に応じて、その時点での RGB 値とアルファ値 (つまり、ピクセル) を抽出する必要があります。どうすればこれを達成できますか?
重複の可能性:
UIImage (Cocoa Touch) または CGImage (Core Graphics) からピクセル データを取得する方法は?
UIImageのピクセルカラーを取得
ユーザーが画像から色を選択できるシナリオがあります。たとえば、以下のようなものです。
画像上でのユーザーのタップ位置に応じて、その時点での RGB 値とアルファ値 (つまり、ピクセル) を抽出する必要があります。どうすればこれを達成できますか?
画像からビットマップ コンテキスト ( CGContextRef
)を作成し、CGPoint
タップされたコンテキストを配列オフセット位置に変換して、ピクセル データから色情報を取得する必要があります。
私のピクセルは何色ですか?を参照してください。チュートリアルとこの同様の Stack Overflow question について。
方法:
- (CGContextRef) createARGBBitmapContextFromImage:(CGImageRef) inImage
CGContextRef
正しい色空間を使用して、引数として渡されたイメージを表す を返します。このメソッドは次のように呼び出されます。
- (UIColor*) getPixelColorAtLocation:(CGPoint) point
UIColor
これは、渡された を取得するために呼び出す関数ですCGPoint
。
これらのメソッドはUIImageView
、プロセスをより簡単にするために a のサブクラスになっていることに注意してください。