首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在ALAsset上实现iOS照片的可访问性

如何在ALAsset上实现iOS照片的可访问性
EN

Stack Overflow用户
提问于 2013-08-24 13:08:37
回答 1查看 259关注 0票数 2

我写了一个基于ALAssetsLibrary的自定义图像选择器,一切都很好,除了VoiceOver,每一张照片都表示为"Button",我认为这不太好。

因此,我查看了构建在iOS中的iOS应用程序,VoiceOver为每一张照片提供了如下信息:

  1. photovideoscreenshot等。
  2. portrait还是landscape
  3. 它的creation date
  4. sharp还是blurry
  5. bright还是dark

我想我可以从ALAsset的属性中得到前三个,也就是

  1. ALAssetPropertyType
  2. ALAssetPropertyOrientation
  3. ALAssetPropertyDate

但是锐度亮度怎么样?我可以从图像元数据中获取它们或者导出它们吗?

更新:

在照片的EXIF元数据中:

  1. 亮度是可用的照片直接从相机,但照片保存在网上或从屏幕拍摄总是返回零值。
  2. 锐度在exif中总是为零,从文档中,锐度值是“应用于图像的锐度”,因此我认为图像处理应用程序(如Aperture)使用了锐度。

但是Photos.app对于任何类型的照片都有正确的亮度和锐度值,我们自己能做到吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-24 13:45:00

可以使用EXIF元数据获取值。

所有的密钥在、苹果的Docs、这里这里中都有参考

这里我写了一个例子:

代码语言:javascript
运行
复制
NSDictionary *allMetadata = [[asset defaultRepresentation] metadata];

NSDictionary *exif = [allMetadata objectForKey:(NSString*)kCGImagePropertyExifDictionary];

而不是得到sharpnessbrightness

代码语言:javascript
运行
复制
NSNumber *sharpness = [exif objectForKey:(NSString*)kCGImagePropertyExifSharpness];
NSNumber *brightness = [exif objectForKey:(NSString*)kCGImagePropertyExifBrightnessValue];
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18418938

复制
相关文章

相似问题

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