如何从 UIImage 获取 NSDATE?

Posted

技术标签:

【中文标题】如何从 UIImage 获取 NSDATE?【英文标题】:How to get a NSDATE from UIImage? 【发布时间】:2011-03-11 17:45:48 【问题描述】:

在这种情况下,我如何从 UIImage 中获取日期或元数据:

//UIImagePickerControllerSourceType
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;

//delegate return
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

// po info in console -> there is no metadata of the image where i can find the date
// Has anyone an idea how to get it?


【问题讨论】:

【参考方案1】:

如果您指的是图像中的 EXIF 元数据(包括日期信息),您可以查看此问题以获取有关如何访问它的信息:

How to access photo EXIF in pictures taken from camera in ios 4.0+?

【讨论】:

完成了这项工作。 Apple 是否允许使用此静态库? 我认为链接静态库应该没问题。 Xcode 有一个用于静态库的 iOS 模板,我很确定商店中的很多应用程序都想要使用库。【参考方案2】:

信息字典包含一个名为“UIImagePickerControllerMediaMetadata”的键,它是另一个字典。只需 NSLog allKeys 即可获取日期键。

【讨论】:

【参考方案3】:
NSDictionary *metadata = [info objectForKey: UIImagePickerControllerMediaMetadata];
NSLog(@"%@",metadata);

从元数据中选择您需要的内容。

【讨论】:

好的,谢谢,当 sourceType 设置为 Camera 时,我注意到它在 info dict 中。但是当它设置为库时,这是字典的内容:code Current language: auto; currently objective-c (gdb) po info UIImagePickerControllerMediaType = "public.image"; UIImagePickerControllerOriginalImage = "<UIImage: 0x647b420>"; UIImagePickerControllerReferenceURL = "assets-library://asset/asset.JPG?id=1000000115&ext=JPG"; UIImagePickerControllerMediaMetadata - 此键仅在使用源类型设置为 UIImagePickerControllerSourceTypeCamera 的图像选择器时有效,并且仅适用于静止图像。 - 是(不幸的是)Apple 文档所说的。我认为答案就在@GregInYEG 帖子中。

以上是关于如何从 UIImage 获取 NSDATE?的主要内容,如果未能解决你的问题,请参考以下文章

快速从发件人处获取 UIImage

截取UIImage指定大小区域

如何从 NSDate 获取小时和分钟?

如何从 NSDate 获取当前日期、时间、年份?

如何在 [NSDate 日期] 当天 00:00 获取 NSDate?

iOS:从 NSDate 获取本地化小时