gpt4 book ai didi

ios - CGImageRef 出现 EXC_BAD_ACCESS 错误

转载 作者:可可西里 更新时间:2023-11-01 05:54:11 24 4
gpt4 key购买 nike

我有一个函数:

- (UIImage *) resizeImage:(UIImage *)image width:(CGFloat)resizedWidth height:(CGFloat)resizedHeight shouldCrop:(BOOL)crop
{
CGImageRef imageRef = [image CGImage];
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGContextRef bitmap = CGBitmapContextCreate(NULL, resizedWidth, resizedHeight, 8, 4 * resizedWidth, colorSpace, (CGBitmapInfo) kCGImageAlphaPremultipliedFirst);

CGContextDrawImage(bitmap, CGRectMake(0, 0, resizedWidth, resizedHeight), imageRef);
CGImageRef ref = CGBitmapContextCreateImage(bitmap);

if (crop) // for SmallImage (tableviewcell)
{
CGRect cropRect = CGRectMake(0, CGImageGetHeight(ref) * 0.5 - ((float) kIvHeight * 0.5), (float) kIvWidth, (float) kIvHeight);
ref = CGImageCreateWithImageInRect(ref, cropRect);
}

UIImage * result = [UIImage imageWithCGImage:ref];

CGContextRelease(bitmap);
CGImageRelease(ref);
CGImageRelease(imageRef);
return result;
}

CGImageRelease(imageRef); 行导致我的应用因 EXC_BAD_ACCESS 崩溃当我删除该行时它似乎可以工作 - 但这不会导致内存泄漏吗?

最佳答案

您不拥有 CGImageRef imageRef,因为您是使用 [image CGImage] 获得它的,因此您不需要释放它。

也看看这个:How do I release a CGImageRef in iOS

关于ios - CGImageRef 出现 EXC_BAD_ACCESS 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23105287/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com