我正在研究我想要合并图像的应用程序,但是当我迭代地调用函数时,它花费了太多时间。任何人请告诉我如何改进函数的响应。
- (UIImage *) addImageToImage:(UIImage *)img withImage2:(UIImage *)img2 andRect:(CGRect)cropRect withImageWidth:(int) width
{
CGSize size = CGSizeMake(width,40);
UIGraphicsBeginImageContext(size);
CGPoint pointImg1 = CGPointMake(0,0);
[img drawAtPoint:pointImg1];
CGPoint pointImg2 = cropRect.origin;
[img2 drawAtPoint: pointImg2];
UIImage* result = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return result;
}
这个函数在迭代中调用30到50次......所以我需要提高它的效率。
答案 0 :(得分:3)
一些想法:
CGBitmapContextCreate
而不是UIGraphicsBeginImageContext
创建上下文)CGContextSetInterpolationQuality(context, kCGInterpolationNone)
还有一些潜在的优化,但它们取决于图像的类型(alpha,大小,类型......)。