首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >访问UIImagePickerController - iOS/iPhone拍摄的图像的元数据(exif标签)

访问UIImagePickerController - iOS/iPhone拍摄的图像的元数据(exif标签)
EN

Stack Overflow用户
提问于 2010-10-22 04:35:20
回答 2查看 4.9K关注 0票数 6

是否可以在iOS中访问UIImagePickerController捕获的图像的元数据?我知道这可以通过相机应用程序(或iPhone照片库中的其他方式)捕获的图像的AssetLibrary框架来完成,但是开发人员可以在用户拍摄照片后立即从应用程序中访问任何元数据/exif信息吗?我正在寻找任何类型的相机曝光水平的信息,从一张已经拍摄的图像。谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-10-22 05:03:54

显然,您可以在拍摄后立即访问图像的元数据。选择镜像后系统调用的协议方法为:

代码语言:javascript
运行
复制
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

info参数包含一个键:UIImagePickerControllerMediaMetadata

现在,如果我能想出如何从中获得exif标记或任何曝光级别信息来推断有关光照级别的基本信息,我会很高兴。:)

票数 5
EN

Stack Overflow用户

发布于 2018-03-05 20:30:14

更新到带有照片框架的iOS 11

Objective - C:

代码语言:javascript
运行
复制
#import <Photos/Photos.h>

- (void)imagePickerController:(UIImagePickerController *)imagePicker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info {

    PHAsset* asset = info[UIImagePickerControllerPHAsset];

    [asset requestContentEditingInputWithOptions:nil completionHandler:^(PHContentEditingInput *contentEditingInput, NSDictionary *info) {
        CIImage *fullImage = [CIImage imageWithContentsOfURL:contentEditingInput.fullSizeImageURL];

        NSLog(@"%@", fullImage.properties.description);
    }];

    [imagePicker dismissViewControllerAnimated:YES completion:nil];
}

您还需要使用图片库的权限(NSPhotoLibraryUsageDescription),然后可以添加以下代码来查看did加载或查看did出现

代码语言:javascript
运行
复制
[PHPhotoLibrary requestAuthorization:^(PHAuthorizationStatus status) {
    switch (status) {
        case PHAuthorizationStatusAuthorized:
            NSLog(@"PHAuthorizationStatusAuthorized");
            break;
        case PHAuthorizationStatusDenied:
            NSLog(@"PHAuthorizationStatusDenied");
            break;
        case PHAuthorizationStatusNotDetermined:
            NSLog(@"PHAuthorizationStatusNotDetermined");
            break;
        case PHAuthorizationStatusRestricted:
            NSLog(@"PHAuthorizationStatusRestricted");
            break;
    }
}];
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3991673

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档