//创建图形上下文
UIGraphicsBeginImageContext(CGSizeMake(200, 200));
CGContextRef context = UIGraphicsGetCurrentContext();
UIImage *image = [UIImage imageNamed:@"1.png"];
[image drawInRect:CGRectMake(0, 0, 200, 200)];
//添加水印
NSString *str = @"我的图片";
[str drawInRect:CGRectMake(10, 10, 20, 180) withAttributes:@{NSFontAttributeName:[UIFont boldSystemFontOfSize:16],NSForegroundColorAttributeName:[UIColor redColor]}];
//从当前图形上下文获取图片(将当前图形上下文转成图片)
UIImage *changeImage = UIGraphicsGetImageFromCurrentImageContext();
//释放内存
CGContextRelease(context);
//释放内存
UIGraphicsEndImageContext();
NSLog(@"%f",UIImagePNGRepresentation(changeImage).length/1024.f);
UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(100, 100, changeImage.size.width, changeImage.size.height)];
imageView.image = changeImage;
[self.view addSubview:imageView];
//保存到相册(需要传入回调方法,回调方法格式有要求)
UIImageWriteToSavedPhotosAlbum(changeImage, self, @selector(image:error:contextInfo:), nil);
- (void)image:(UIImage *)image error:(NSError *)error contextInfo:(CGContextRef)context
{
if (error) {
NSLog(@"保存失败!");
}
else
{
NSLog(@"保存成功!");
}
}