我正在开发彩色相框应用程序,但我陷入了一个部分。我的应用程序中有很多框架。所以我想查找我的应用程序的透明区域,并以编程方式将UIImageView放在该部分上。但我正在尝试逐个像素地读取代码的数量,但是没有什么可行的
这里用于查找透明区域的代码
CGImageRef imageRef = [image CGImage];
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
unsigned char *rawData = malloc(image.size.width * image.size.height * 4);
NSUInteger bytesPerPixel = 4;
NSUInteger bytesPerRow = bytesPerPixel * image.size.width;
NSUInteger bitsPerComponent = 8;
CGContextRef context = CGBitmapContextCreate(rawData, image.size.width, image.size.height, bitsPerComponent, bytesPerRow, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);
CGColorSpaceRelease(colorSpace);
CGContextDrawImage(context, CGRectMake(0, 0, image.size.width , image.size.height), imageRef);
CGContextRelease(context);
unsigned char * rawData2 = malloc(image.size.width * image.size.height * 4);
BOOL isBlank = YES;
for(int index=0;index<(image.size.width * image.size.height * 4);index+=4)
{
if(index%4==0)
{
if(rawData[(int)index+3]==0)
{
rawData2[(int)index] = rawData[(int)index];
rawData2[(int)index+1] = rawData[(int)index+1];
rawData2[(int)index+2] = rawData[(int)index+2];
rawData2[(int)index+3] = rawData[(int)index+3];
isBlank=NO;
}
else
{
rawData2[(int)index] = 0;
rawData2[(int)index+1] = 0;
rawData2[(int)index+2] = 0;
rawData2[(int)index+3] = 0;
}
}
}
如何在imageview中找到透明区域框架(CGreact)?