32、[ iOS ] 微信分享图片问题解决

微信分享时,图片大小必须小于32k,所以大多数情况下都需要对图片进行压缩裁剪,试过好多方法都不对,最后用如下方法成功解决问题。

// ------这种方法对图片既进行压缩,又进行裁剪
- (NSData *)imageWithImage:(UIImage*)image scaledToSize:(CGSize)newSize;
{
    UIGraphicsBeginImageContext(newSize);
    [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
    UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return UIImageJPEGRepresentation(newImage, 0.8);
}

// ------调用
UIImage *img = [UIImage imageWithData:[self imageWithImage:image scaledToSize:CGSizeMake(300, 300)]]

你可能感兴趣的:(32、[ iOS ] 微信分享图片问题解决)