从UIImagePickerControlleHow的结果来看,如何获得包含元数据的JPEG?
在iOS 4.2上,当我使用UIImagePickerController让用户从照片库中选择一个图像时,这些是返回给我的字典键:
2011-03-02 13:15:59.518 xxx[15098:307] didFinishPickingMediaWithInfo:
info dictionary: {
UIImagePickerControllerMediaType = "public.image";
UIImagePickerControllerOriginalImage = "<UIImage: 0x3405d0>";
UIImagePickerControllerReferenceURL =
"assets-library://asset/asset.JPG?id=1000000050&ext=JPG";
}
使用这些键中的一个或多个,如何获得包含图像元数据(例如曝光信息和GPS位置数据)的JPEG表示,以便我可以在某处上传并包含元数据(不会被剥离)?
我从Warren Burton看到的非常好的答案显示从iPhone中的ALAsset中检索到的URL显示图像?如何使用UIImagePickerControllerReferenceURL和ALAssetsLibrary assetForURL方法来获取ALAsset和ALAssetRepresentation。但是,我该怎样做才能获得包含所有元数据的JPEG?
或者是否有通过UIImage的机制?
这里的底线是我想获得包含在其中的元数据的JPEG ...
没有找到相关结果
已邀请:
1 个回复
届甸衬丝蚕
ala:
这似乎没有给你(大部分)图像中的元数据(EXIF,GPS等)。很公平,我认为这是众所周知的。 我的测试表明,图像资产的“默认表示”中的JPEG将包含所有元数据,包括EXIF和GPS信息(假设它首先出现在那里)。您可以通过从资产URL到资产到资产的默认表示(ALAssetRepresentation)然后使用getBytes方法/消息来检索JPEG图像的字节来获取该图像。该字节流具有上述元数据。 这是我用于此的一些示例代码。它需要一个资产URL,假设是一个图像,并返回带有JPEG的NSData。注意你的使用,代码中的错误处理等。