#pragma mark ---- 图片的压缩
// 图片的压处理 减少图片的大小
- (void)imageView
{
// 两种压缩图片的方式
// UIImageJPEGRepresentation 压缩方式比UIImagePNGRepresentation小的多
// 如果对图片质量无要求的话 建议用 UIImageJPEGRepresentation
NSData *dataImage = UIImageJPEGRepresentation([UIImage new], 1.0); // JPEG格式压缩
NSData *dataimage = UIImagePNGRepresentation([UIImage new]); // PNG 格式压缩
}
// 图片的缩处理
// sourceImage: 需要缩处理的源图片 targetWidth : 最终的目标图片宽度
- (UIImage *)compressImage:(UIImage *)sourceImage toTargetWidth:(CGFloat)targetWidth {
// 原来的图片的大小
CGSize imageSize = sourceImage.size;
CGFloat width = imageSize.width;
CGFloat height = imageSize.height;
CGFloat targetHeight = (targetWidth / width) * height;
// 创建新建图片的上下文(新的宽度, 高度)
UIGraphicsBeginImageContext(CGSizeMake(targetWidth, targetHeight));
// 源图片 画一个CGrect的大小的图片
[sourceImage drawInRect:CGRectMake(0, 0, targetWidth, targetHeight)];
// 新建图片 得到新的压缩大小图片
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
// 绘制完成
UIGraphicsEndImageContext();
return newImage;
}
iOS 图片压缩的方法
最新推荐文章于 2021-11-01 17:05:33 发布