UIImage一些操作小技巧

二张图片合并(添加水印等等)

-(UIImage *)addImage:(UIImage *)image1 toImage:(UIImage *)image2
{
UIGraphicsBeginImageContext(image2.size);
//Draw image2
[image2 drawInRect:CGRectMake(0, 0, image2.size.width, image2.size.height)];
//Draw image1
[image1 drawInRect:CGRectMake(20, 20, image1.size.width, image1.size.height)];
UIImage *resultImage=UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();


return resultImage;
}

 

UIImage的等比率缩放


- (UIImage *)scaleImage:(UIImage *)image toScale:(float)scaleSize

{

 

UIGraphicsBeginImageContext(CGSizeMake(image.size.width * scaleSize, image.size.height * scaleSize);
[image drawInRect:CGRectMake(0, 0, image.size.width * scaleSize, image.size.height * scaleSize)];
UIImage *scaledImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

 


return scaledImage;

 

}

 

自定长宽
- (UIImage *)reSizeImage:(UIImage *)image toSize:(CGSize)reSize

{
UIGraphicsBeginImageContext(CGSizeMake(reSize.width, reSize.height));
[image drawInRect:CGRectMake(0, 0, reSize.width, reSize.height)];
UIImage *reSizeImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

 


return reSizeImage;

 

}

 

对特定View进行截图(必须先import QuzrtzCore.framework)


-(UIImage*)captureView:(UIView *)theView

 

{
CGRect rect = theView.frame;
UIGraphicsBeginImageContext(rect.size);
CGContextRef context = UIGraphicsGetCurrentContext();
[theView.layer renderInContext:context];
UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

 


return img;

 

}

 

 

 

 

posted @ 2014-02-12 11:56  怒放紫罗兰  阅读(158)  评论(0编辑  收藏  举报