ios图片的保存修改等处理方法

2025-10-20 05:25:02

1、等比缩放喝杰矿

- (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;

}

ios图片的保存修改等处理方法

2、自定义大小

- (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;

}

ios图片的保存修改等处理方法

3、处理某个特定的view 

只要是继承UIView的敏仗object 都可以处理必须先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;

}

ios图片的保存修改等处理方法

4、存储图片

把要处理裹秤的图片以image.png的名字存储到app home地下的Document目录中

NSString *path = [[NSHomeDirectory()stringByAppendingPathComponent:@"Documents"]stringByAppendingPathComponent:@"image.png"];

[UIImagePNGRepresentation(image) writeToFile:pathatomically:YES];

存储到手机的图片库中

CGImageRef screen = UIGetScreenImage();

UIImage* image = [UIImage imageWithCGImage:screen];

CGImageRelease(screen);

UIImageWriteToSavedPhotosAlbum(image, self, nil, nil);

ios图片的保存修改等处理方法

5、UILabel根据text自动调整大小

label.text = @"**********";

CGRect frame = label.frame;

frame.size.height = 10000; // 设置一个很大的高度

label.frame = frame;

[label sizeToFit];

frame.size.height = label.frame.size.height;

label.frame = frame;

ios图片的保存修改等处理方法

6、5.捕捉屏幕截图

CALayer实例使用Core Graphics的renderInContext方法可以将视图绘制到图像上下文中以便转化为其他UIImage实例。前提先#import

+ (UIImage *) imageFromView: (UIView *)theView { // draw a view's contents into an image context UIGraphicsBeginImageContext(theView.frame.size); CGContextRef context = UIGraphicsGetCurrentContext(); [theView.layer renderInContext:context]; UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return theImage; 

}

注:UIGraphicsBeginImageContext(CGSize size)创建一个基于位图的上下文(context),并将其设置为当前上下文。函数功能与UIGraphicsBeginImageContextWithOptions相同,相当于该方法的opaque参数为NO,scale因子为1.0。而UIGraphicsEndImageContext()方法是移除栈顶的基于当前位图的图形上下文。

ios图片的保存修改等处理方法

ios图片的保存修改等处理方法

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢