如何从 ALAsset 获取 exif 信息?
Posted
技术标签:
【中文标题】如何从 ALAsset 获取 exif 信息?【英文标题】:How to get exif information from ALAsset? 【发布时间】:2011-12-12 13:26:49 【问题描述】:我需要从所选资产中获取 exif 信息并将其部分显示在屏幕上。
【问题讨论】:
【参考方案1】:[[asset defaultRepresentation] metadata];
返回给定资产表示的元数据字典。查看这本字典以获取您感兴趣的数据。我不确定,但我认为该字典(和子字典)中的键与CGImageProperties Reference 下列出的键相同。
【讨论】:
谢谢,我将元数据加载到 nsdictionary,但不知道如何解析密钥。【参考方案2】:这是一个完整的答案……都在一个地方
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 ...
【讨论】:
以上是关于如何从 ALAsset 获取 exif 信息?的主要内容,如果未能解决你的问题,请参考以下文章