網絡圖片下載以后,不能完全平鋪到UIImageView上面,需要所一定的裁剪
- (UIImage *)handleImage:(UIImage *)originalImage
{
CGSize newSize;
CGImageRef imageRef =nil;
if ((originalImage.size.width / originalImage.size.height) < (imageView.frame.size.width / imageView.frame.size.height)) {
newSize.width = originalImage.size.width;
newSize.height = originalImage.size.width *self.height /self.width;
imageRef = CGImageCreateWithImageInRect([originalImageCGImage], CGRectMake(0,fabs(originalImage.size.height - newSize.height) / 2, newSize.width, newSize.height));
} else {
newSize.height = originalImage.size.height;
newSize.width = originalImage.size.height *self.width /self.height;
imageRef = CGImageCreateWithImageInRect([originalImageCGImage], CGRectMake(fabs(originalImage.size.width - newSize.width) / 2, 0, newSize.width, newSize.height));
}
return [UIImageimageWithCGImage:imageRef];
}
這樣就可以裁剪出相同比例的圖片,然后平鋪到UIImageView上面,就不會出現拉伸變形注意:裁剪有可能會出現圖片不全,如果圖片比例和UIImageView寬高比例過大,裁剪的也會比較多新聞熱點
疑難解答