我正在使用https://github.com/lloydsargent/BlackRaccoon通过 FTP 在 iOS 应用程序上上传在 iPhone 上拍摄的图像(转换为 NSData) 。
dataImage = UIImageJPEGRepresentation(image, 0.5);
问题是图像大小约为 40mb,每次应用程序完成上传时,Xcode 都会崩溃。如何使图像变小?
我正在使用https://github.com/lloydsargent/BlackRaccoon通过 FTP 在 iOS 应用程序上上传在 iPhone 上拍摄的图像(转换为 NSData) 。
dataImage = UIImageJPEGRepresentation(image, 0.5);
问题是图像大小约为 40mb,每次应用程序完成上传时,Xcode 都会崩溃。如何使图像变小?
此方法将允许您以编程方式在 Objective-C 中调整图像的大小。
+ (UIImage *)imageWithImage:(UIImage *)image scaledToSize:(CGSize)newSize {
UIGraphicsBeginImageContextWithOptions(newSize, YES, [UIScreen mainScreen].scale);
[image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
基本上我建议您调整图像大小,然后如果问题是您使用的 API 则将其上传。话虽如此,使用 NSURLConnection 类方法,我已经能够上传大于 40mb 的文件。您可以在此处查看我刚刚发布的关于如何使用这些方法通过 PHP 后端上传文件的帖子:
如果有帮助,请务必将我的答案标记为正确!