Как получить информацию exif от ALAsset?

Мне нужно получить информацию exif из выбранного актива и отобразить ее часть на экране.


person B.S.    schedule 12.12.2011    source источник


Ответы (2)


[[asset defaultRepresentation] metadata];

возвращает словарь словарей метаданных для данного представления актива. Загляните в этот словарь, чтобы найти интересующие вас данные. Я не уверен, но думаю, что ключи в этом словаре (и подсловарях) такие же, как и в разделе Справочник по CGImageProperties.

person Ole Begemann    schedule 12.12.2011
comment
Спасибо, я загружаю метаданные в nsdictionary, но не знаю, как разобрать ключи. - person B.S.; 12.12.2011

Это полный ответ ... все в одном месте

NSDictionary *nsd = [[asset3 defaultRepresentation] metadata];
    NSString *widthStr = [nsd objectForKey: @"PixelWidth"];
    NSString *heightStr = [nsd objectForKey: @"PixelHeight"];

    NSLog(@"nsd: %@ ... widthStr: %@ ... heightStr: %@ ...", nsd, widthStr, heightStr);

выход:

nsd: {
    ColorModel = RGB;
    DPIHeight = 72;
    DPIWidth = 72;
    Depth = 8;
    Orientation = 1;
    PixelHeight = 1136;
    PixelWidth = 642;
    "{Exif}" =     {
        ColorSpace = 1;
        ComponentsConfiguration =         (
            1,
            2,
            3,
            0
        );
        ExifVersion =         (
            2,
            2,
            1
        );
        FlashPixVersion =         (
            1,
            0
        );
        PixelXDimension = 642;
        PixelYDimension = 1136;
        SceneCaptureType = 0;
    };
    "{TIFF}" =     {
        Orientation = 1;
        ResolutionUnit = 2;
        XResolution = 72;
        YResolution = 72;
    };
} ... widthStr: 642 ... heightStr: 1136 ...
person Sam B    schedule 04.03.2014