修改UIImage的大小


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

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


//UIImage.h

 

#import <Foundation/Foundation.h>


@interface UIImage (Scale)


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

@end

 

//UIImage.m

 

#import "UIImage.h"


@implementation UIImage (Scale)



-(UIImage *)TransformtoSize:(CGSize)Newsize

{

    // 创建一个bitmap的context

    UIGraphicsBeginImageContext(Newsize);

    // 绘制改变大小的图片

    [self drawInRect:CGRectMake(00, Newsize.width, Newsize.height)];

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

    UIImage *TransformedImg=UIGraphicsGetImageFromCurrentImageContext();

    // 使当前的context出堆栈

    UIGraphicsEndImageContext();

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

    return TransformedImg;

}


@end



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

 

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

UIImage *MaxImg_Fin=[MaxImg TransformtoSize:CGSizeMake(2828)];


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM