设置使用iPhone相机拍摄的图像类型

Cod*_*der 2 iphone camera objective-c uiimagepickercontroller ios

如果我们使用iPhone相机拍摄照片,默认情况下图像将以JPEG格式保存.

我想保存以PNG等其他格式捕获的图像.可能吗?

当我们从我们的应用程序调用iPhone相机时,是否可以从代码执行此操作,我们可以设置在捕获图片后必须保存的图像类型吗?我的意思是在拍摄照片之前打开相机并设置类型?

Mru*_*nal 6

UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];

// png image data

NSData *pngData = UIImagePNGRepresentation(image);

// jpeg image data

NSData *jpegData = UIImageJPEGRepresentation(image, compressionQuality);  // compressionQuality = 0.0 to 1.0 --> 0 means maximum compression and 1 means minimum compression
Run Code Online (Sandbox Code Playgroud)

获得NSData后,您可以将此数据保存到特定文件.有关详细信息,请浏览此链接

希望这会帮助你.


Azi*_*lah 5

这将帮助您以png类型保存图像

-(void)imagePickerController:(UIImagePickerController *)picker
  didFinishPickingImage : (UIImage *)image
             editingInfo:(NSDictionary *)editingInfo
{
NSError *error;

NSString  *pngPath = [NSHomeDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"Documents/%@.png",@"photoname"]];
[UIImagePNGRepresentation(image) writeToFile:pngPath atomically:NO];


NSString *documentsDirectory = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];

NSLog(@"Documents directory: %@", [fileManager contentsOfDirectoryAtPath:documentsDirectory error:&error]);

[self dismissModalViewControllerAnimated:YES];
}
Run Code Online (Sandbox Code Playgroud)