iOS 之代碼實(shí)現(xiàn)修改image 大小size
- UIImage 的 Category 方法:
//等比例縮放image
/*
返回:UIImage 對(duì)象
size:傳入需要修改成的size
*/
-(UIImage*)scaleToSize:(CGSize)size
{
// 創(chuàng)建一個(gè)bitmap的context
// 并把它設(shè)置成為當(dāng)前正在使用的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)];
// 從當(dāng)前context中創(chuàng)建一個(gè)改變大小后的圖片
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
// 使當(dāng)前的context出堆棧
UIGraphicsEndImageContext();
// 返回新的改變大小后的圖片
return scaledImage;
}
- 隨處可放的對(duì)象方法:
//等比例縮放image
/*
返回:UIImage 對(duì)象
size:傳入需要修改成的size
image:傳入需要修改成的image
*/
-(UIImage*)scaleToSize:(CGSize)size image:(UIImage*)image
{
// 創(chuàng)建一個(gè)bitmap的context
// 并把它設(shè)置成為當(dāng)前正在使用的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)];
// 從當(dāng)前context中創(chuàng)建一個(gè)改變大小后的圖片
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
// 使當(dāng)前的context出堆棧
UIGraphicsEndImageContext();
// 返回新的改變大小后的圖片
return scaledImage;
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者