上传NSData UIImageJPEGRepresentation太大了

问题描述 投票:0回答:1

我正在使用https://github.com/lloydsargent/BlackRaccoon在iOS应用程序上通过FTP上传在iPhone上拍摄的图像(转换为NSData)。

dataImage = UIImageJPEGRepresentation(image, 0.5);

问题是图像大小约为40mb,每次app完成上传时,Xcode崩溃。如何使图像变小?

ios nsdata
1个回答
0
投票

此方法允许您以编程方式在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后端的文件的帖子:

Strange issue while posting image from iPhone

如果有帮助,请务必将我的答案标记为正确!

© www.soinside.com 2019 - 2024. All rights reserved.