在使用TZImagePickerController
进行上传图片时,需要自己处理然后上传给服务器。
太大的图片动辄好几兆的图片上传图片时很慢的。
所以我们需要对图片进行适当处理。如果可以指定压缩到指定的尺寸,我们使用CoreGraphics
的方法重新绘制一个2X
的图片即可,这样既满足了显示清晰度,同时也减小了图片的内存。如果不能指定尺寸,我们需要转data,NSData *data = UIImageJPEGRepresentation(image, 0.5);
这种方法会压缩图片内存,但是像素不会减少,改变的只是图片质量。
TZImagePickerController *pickerController = [[TZImagePickerController alloc]initWithMaxImagesCount:3 delegate:self];
NCWS(weakSelf);
[pickerController setDidFinishPickingPhotosHandle:^(NSArray<UIImage *> *photo, NSArray *assets, BOOL isSelectOriginalPhoto){
if (photo.count) {
NSMutableArray *array = [NSMutableArray array];
for (__strong UIImage *image in photo) {
image =[image scaleToSize:image.size];
NSData *data = UIImageJPEGRepresentation(image, 0.5);
image =[UIImage imageWithData:data];
[array addObject:image];
}
weakSelf.feedbackView.addImageA = array;
}
}];
[self presentViewController:pickerController animated:YES completion:nil];
网友评论