保存图片至相册

    //创建图形上下文
    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(@"保存成功!");
    }
}

 

posted on 2015-09-13 20:20  Baymax01  阅读(351)  评论(0编辑  收藏  举报

导航