1
我想更改用戶在圖像上觸摸的顏色。我得到了一些代碼來獲取圖像數據低於根據觸摸點更改像素的顏色
NSString * path = [[NSBundle mainBundle] pathForResource:@"filename" ofType:@"jpg"];
UIImage * img = [[UIImage alloc]initWithContentsOfFile:path];
CGImageRef image = [img CGImage];
CFDataRef data = CGDataProviderCopyData(CGImageGetDataProvider(image));
const unsigned char * buffer = CFDataGetBytePtr(data);
我知道我可以很容易地觸摸點,但我的問題是下面
- 正如我們所知道的視網膜顯示1點= 2像素所以,我知道是否需要爲單點觸摸點更改2像素的顏色?請糾正我,如果我哪裏錯了?
- 如何從圖像數據中獲取這兩個像素?
根據您的建議,我已經做了一些更改以獲得重點。但是我們正在獲取像素的圖像數據。因此,爲了獲得某個點的正確像素顏色,我們必須這樣做:pixel = CGPointMake(imageLocation.x * image.scale,imageLocation.y * image.scale)。 – Iducool 2013-03-08 16:28:05
如果我的評論看起來合適,請按照此編輯您的答案,以便我接受。 – Iducool 2013-03-08 16:28:50
很高興編輯,但不知道我明白 - 你的UIImage有一個叫'scale'的屬性? – danh 2013-03-08 16:40:06