如何使用iphone sdk中的单个uislider控制多个UIImageview操作?像色调,对比度,亮度,圣化,锐度这样的动作。
任何示例代码或教程。请提前帮助me.Thanks。
发布于 2010-12-15 15:40:42
您需要访问UIImageView的像素数组。以CGContextRef为例(还有很多其他方法)
CGContextRef context = [self createARGBBitmapContextFromImage:yourView.image.CGImage];
unsigned char* data = CGBitmapContextGetData (context);
size_t width = CGImageGetWidth(yourView.image.CGImage);
size_t height = CGImageGetHeight(yourView.image.CGImage);
for (int y=0; y<height; y++) {
for (int x=0; x<width; x++) {
int pos = y*width + x;
int argb = data[pos];
int r = (argb >> 16) & 0xff;
int g = (argb >> 8) & 0xff;
int b = argb & 0xff;
// do here your transformations
data[pos] = (0xFF<<24) | (r<<16) | (g<<8) | b;
}
}一个简单的转换就是亮度到示例:
r = (int) (r + brightness);
g = (int) (g + brightness);
b = (int) (b + brightness);
if(r>=255) r=255;
if(g>=255) g=255;
if(b>=255) b=255;https://stackoverflow.com/questions/4437785
复制相似问题