iOS 之代码实现修改image 大小size
- UIImage 的 Category 方法:
//等比例缩放image
/*
返回:UIImage 对象
size:传入需要修改成的size
*/
-(UIImage*)scaleToSize:(CGSize)size
{
// 创建一个bitmap的context
// 并把它设置成为当前正在使用的context
//Determine whether the screen is retina
if([[UIScreen mainScreen] scale] == 2.0)
{
UIGraphicsBeginImageContextWithOptions(size, NO, 2.0);
}else{
UIGraphicsBeginImageContext(size);
}
// 绘制改变大小的图片
[self drawInRect:CGRectMake(0, 0, size.width, size.height)];
// 从当前context中创建一个改变大小后的图片
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
// 使当前的context出堆栈
UIGraphicsEndImageContext();
// 返回新的改变大小后的图片
return scaledImage;
}
- 随处可放的对象方法:
//等比例缩放image
/*
返回:UIImage 对象
size:传入需要修改成的size
image:传入需要修改成的image
*/
-(UIImage*)scaleToSize:(CGSize)size image:(UIImage*)image
{
// 创建一个bitmap的context
// 并把它设置成为当前正在使用的context
//Determine whether the screen is retina
if([[UIScreen mainScreen] scale] == 2.0)
{
UIGraphicsBeginImageContextWithOptions(size, NO, 2.0);
}else{
UIGraphicsBeginImageContext(size);
}
// 绘制改变大小的图片
[image drawInRect:CGRectMake(0, 0, size.width, size.height)];
// 从当前context中创建一个改变大小后的图片
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
// 使当前的context出堆栈
UIGraphicsEndImageContext();
// 返回新的改变大小后的图片
return scaledImage;
}