xcode5:如何保存和加载图像?

时间:2014-04-24 11:41:52

标签: ios objective-c image gpuimage

我正在开发一个应用程序,我可以在其中对图像应用过滤器。
我想创建一个撤消按钮,重置imageView中的原始图像。
解决方案是我将原始图像保存在自己的UIImage对象中,然后再对其应用任何过滤器。这样我就可以在我的撤销方法中回到那个。

有人知道我该怎么做吗?

2 个答案:

答案 0 :(得分:0)

在这里查看文档:{​​{3}}

您可以使用UIImagePNGRepresentation()执行所需操作。

然后重新阅读:imageWithContentsOfFile:

答案 1 :(得分:0)

Get Image from disk。假设image stored中有document directory

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

NSString *documentsDirectory = [paths objectAtIndex:0];

NSString *yourImgPath = [documentsDirectory stringByAppendingPathComponent:@"1.png"];

UIImage *originalImage = [UIImage imageWithContentsOfFile:yourImgPath];

tempImage

创建originalImage
UIImage *tempImage = originalImage;

Appy filters on tempImage

编辑save以下如何method保存在document directory

- (BOOL)saveImageInDocDir:(UIImage *)image withImagename:(NSString *)strImgName {
  NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
  NSString *documentsDirectory = [paths objectAtIndex:0];
  NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:strImgName];
  NSData *imageData = UIImagePNGRepresentation(image);
  BOOL isSaved = [imageData writeToFile:savedImagePath atomically:YES];   
  return isSaved;
}

您也可以使用NSTempraryDirectory save images来保护cloud backup