我已经绘制了一个UIView的CGContext。
- (void)drawRect:(CGRect)rect {
[self drawInContext:UIGraphicsGetCurrentContext()]
}
我想将我绘制的内容保存到png文件中。
有简单的解决方案吗?
编辑:根据以下建议 - 这是我到目前为止所拥有的......
-(void)createImage {
NSString* outFile = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/image.png"];
DLog(@"creating image file at %@", outFile);
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
NSData *imageData = UIImagePNGRepresentation(image);
[imageData writeToFile:outFile
atomically:NO];
}
- (void)drawRect:(CGRect)rect {
[self drawInContext:UIGraphicsGetCurrentContext()];
[self createImage];
}
答案 0 :(得分:6)
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
NSData *imageData = UIImagePNGRepresentation(image);
[imageData writeToFile:@"image.png"];
答案 1 :(得分:6)
CGImageRef imgRef = CGBitmapContextCreateImage(context);
UIImage* img = [UIImage imageWithCGImage:imgRef];
CGImageRelease(imgRef);
答案 2 :(得分:1)
致电UIGraphicsGetImageFromCurrentImageContext
获取UIImage
然后调用UIImagePNGRepresentation
获取以PNG编码的UIImage的NSData
最后,调用-writeToFile:…
来保存NSData。
答案 3 :(得分:0)
EventPerson