Image Handle

Crop image


-(UIImage *)cropImage:(CGRect)bounds{
** //crop image with bounds **
CGImageRef imageRef = CGImageCreateWithImageInRect([self CGImage], bounds);
** //get a UIImage **
UIImage *croppedImage = [UIImage imageWithCGImage:imageRef];
** //**
CGImageRelease(imageRef);
** //**
return croppedImage;
}

Strech Image

在进行图片拉伸的时候可能并不是每个部分你都想拉伸,这时候你可以使用下面的办法来解决
-(UIImage*)resizableImageWithCapInsets(UIEdgeInsets)capInsetsresizingMode:(UIImageResizingMode)resizingMode

CapInsets:拉升的范围,上,左,下,右。eg.UIEdgeInsetsMake(15, 15, 15, 15),拉升距离上边15,左边,15,下边15,右边15.
resizingMode:选择UIImageResizingModeStretch,拉伸模式

下面看看具体效果


处理前
处理后

后面的尖角部分没有拉伸


-(UIImage*)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidthtopCapHeight:(NSInteger)topCapHeight
此方法和上面的相似,指定(x,y)。距离左边,和上边的距离,得到一个点,拉伸这个点去填充被拉伸出来的部份


此外在xcode的Images.xcassets中也可以设置,点图片,右下方的show slicing

你可能感兴趣的:(Image Handle)