修改UIImage的大小

修改UIImage的大小

修改UISlider的最大值和最小值图片的时候,发现需要修改图片的大小,否则会导致UISlider变形。目前苹果还不支持直接修改UIImage类的大小,只能修改UIImageView的大小。

所以只能通过写方法的方式来实现修改图片。如下:

//UIImage.h

#import

@interfaceUIImage (Scale)

-(UIImage*)TransformtoSize:(CGSize)Newsize;

@end

//UIImage.m

#import"UIImage.h"

@implementationUIImage (Scale)

-(UIImage*)TransformtoSize:(CGSize)Newsize

{

// 创建一个bitmap的context

UIGraphicsBeginImageContext(Newsize);

// 绘制改变大小的图片

[selfdrawInRect:CGRectMake(0,0, Newsize.width, Newsize.height)];

// 从当前context中创建一个改变大小后的图片

UIImage*TransformedImg=UIGraphicsGetImageFromCurrentImageContext();

// 使当前的context出堆栈

UIGraphicsEndImageContext();

// 返回新的改变大小后的图片

returnTransformedImg;

}

@end

最后在其他地方导入头文件,即可以使用此方法了。

UIImage*MaxImg=[UIImageimageNamed:@"sunny.png"];

UIImage*MaxImg_Fin=[MaxImgTransformtoSize:CGSizeMake(28,28)];

你可能感兴趣的:(修改UIImage的大小)