0
- (UIImage *)createThumbnailImage:(UIImage *)image withSize:(CGSize)size {
CGRect imageRect = CGRectMake(0.0, 0.0, size.width, size.height);
UIGraphicsBeginImageContext(size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextClearRect(context, CGRectMake(0, 0, size.width, size.height));
CGContextSetInterpolationQuality(context, 0.8);
[image drawInRect:imageRect blendMode:kCGBlendModeNormal alpha:1];
UIImage *thumbnail = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return thumbnail;
}
- (void)viewDidLoad {
[super viewDidLoad];
UIImage *inputImage = [UIImage imageNamed:@"dog.jpg"];
UIImage *image = [self createThumbnailImage:inputImage withSize:CGSizeMake(640.0, 480.0)]
}
我通過上面的代碼得到了縮略圖(640 * 480)。還有一些奇怪的問題困擾着我。剪輯大PNG使ios應用程序崩潰
當我發送一個JPG(10000 * 10000)的方法,它運作良好。
但是當我發送一個相同大小的PNG時,應用程序會崩潰。
我試圖找到一些關於jpg和png之間區別的文檔,但它沒有任何意義。
有沒有人有任何關於這個錯誤的想法?
因爲您分配了太多的內存你崩潰的iOS,處理它們之前降低這些圖像的大小,10000x10000的方式過於大。 – MoDJ