我有一个UIImage,它是从CIImage加载的:
tempImage = [UIImage imageWithCIImage:ciImage];
问题是,我需要将tempImage
剪裁到特定的CGRect
中,我唯一知道如何做到这一点的方法是使用CGImage
。
但是在iOS 6.0文档中,我找到了以下内容:
CGImage
如果UIImage对象是使用CIImage对象初始化的,则该属性的值为NULL。
A. 如何从CIImage转换为CGImage? 我正在使用此代码,但是我有一个内存泄漏(并且不知道在哪里):
+(UIImage*)UIImageFromCIImage:(CIImage*)ciImage {
CGSize size = ciImage.extent.size;
UIGraphicsBeginImageContext(size);
CGRect rect;
rect.origin = CGPointZero;
rect.size = size;
UIImage *remImage = [UIImage imageWithCIImage:ciImage];
[remImage drawInRect:rect];
UIImage *result = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
remImage = nil;
ciImage = nil;
//
return result;
}