use*_*731 5 xcode iptc exif uiimage cgimagesource
我希望能够在JPEG的元数据中添加文本注释,并能够从iphone应用程序中读取它.
我认为这很简单,因为ios4包含对EXIF信息的支持.所以我使用一个名为used AnalogExif的Windows工具添加元数据,并使用以下方法从我的应用程序中读回:
NSData *jpeg = UIImageJPEGRepresentation(myUIImage,1.0);
CGImageSourceRef source = CGImageSourceCreateWithData((CFDataRef)jpeg, NULL);
NSDictionary *metadata = (NSDictionary *) CGImageSourceCopyPropertiesAtIndex(source,0,NULL);
NSMutableDictionary *metadataAsMutable = [[metadata mutableCopy]autorelease];
[metadata release];
NSMutableDictionary *EXIFDictionary = [[[metadataAsMutable objectForKey:(NSString *)kCGImagePropertyExifDictionary]
Run Code Online (Sandbox Code Playgroud)
这有用......到了一点:)
我在元数据字典中得到的是:
(gdb) po metadata
{
ColorModel = RGB;
Depth = 8;
Orientation = 1;
PixelHeight = 390;
PixelWidth = 380;
"{Exif}" = {
ColorSpace = 1;
PixelXDimension = 380;
PixelYDimension = 390;
};
"{JFIF}" = {
DensityUnit = 0;
JFIFVersion = (
1,
1
);
XDensity = 1;
YDensity = 1;
};
"{TIFF}" = {
Orientation = 1;
};
}
Run Code Online (Sandbox Code Playgroud)
但这就是我所能得到的!我用我能找到的每个EXIF编辑器编辑了JPEG文件(我应该说是主要的PC编辑器),尽管他们都说我添加了JPEG注释和EXIF字幕和关键字,但Apple SDK中似乎没有提供任何信息.在我的应用程序中
有没有人设法在jpeg的元数据中设置文本字段并设法从iphone应用程序中读取它?
如果可能的话,我不想使用第三方库
提前谢谢了
小智 4
您认为 iOS 确实支持比您所看到的更多的元数据,这是正确的。UIImage
当您创建 JPEG 文件并将其转换回 JPEG时,您可能会丢失数据。尝试一下NSData *jpeg = [NSData dataWithContentsOfFile:@"foo.jpg"]
,您应该会看到 EXIF。
归档时间: |
|
查看次数: |
3586 次 |
最近记录: |