【问题标题】:In iphone-exif how to see updated image metadata info?在 iphone-exif 中如何查看更新的图像元数据信息?
【发布时间】:2010-08-13 04:52:55
【问题描述】:

我是 iphone 编程新手。使用谷歌代码 iphone-exif,我可以读/写图像标签,也可以添加自定义图像标签。但是,我的问题是怎么才能看到更新的数据???或者有没有办法用更新的数据保存图像?

我使用了来自网络的 .jpg 图片,位于其他资源文件夹中。 这是我的代码(.m 文件)

NSString *filePath = @"/.../ProjectName/1.jpg"; NSMutableData *imageData = [NSMutableData dataWithContentsOfFile:filePath];

EXFJpeg* jpegScanner = [[EXFJpeg alloc] init];

[jpegScanner scanImageData:imageData];

EXFMetaData* exifData = jpegScanner.exifMetaData; //EXFJFIF* jfif = jpegScanner.jfif;

[exifData addTagValue:@"Changed MAke" forKey:[NSNumber numberWithInt:EXIF_Make]]; id val2 = [exifData tagValue:[NSNumber numberWithInt:EXIF_Make]]; NSLog(val2);

NSLog([exifData tagValue:[NSNumber numberWithInt:EXIF_Model]]); NSLog([exifData tagValue:[NSNumber numberWithInt:EXIF_DateTime]]);

// 使用新标签保存图像 [jpegScanner populateImageData:imageData]; //[imageData writeToFile:filePath atomically:YES];

【问题讨论】:

    标签: iphone image metadata


    【解决方案1】:

    保存新图像数据后:

    NSString *filePath = @"/.../ProjectName/1.jpg"; 
    NSMutableData *imageData = [NSMutableData dataWithContentsOfFile:filePath];
    
    EXFJpeg* jpegScanner = [[EXFJpeg alloc] init];
    
    [jpegScanner scanImageData: imageData];
    
    EXFMetaData* exifData = jpegScanner.exifMetaData;
    
    id myValue = [exifData tagValue:[NSNumber numberWithInt:EXIF_Make]];
    NSLog(@"My changedValue is: %@", myValue);
    [jpegScanner release];
    

    【讨论】:

    • 谢谢jamapag :) 但上面的答案并没有解决我的问题,因为在控制台上,我得到了更新的值。 1. populateImageData() 的输出是什么???(它给了我 - 即将追加剩余数据) 2. 还有其他方法可以查看更新的数据吗??
    猜你喜欢
    • 1970-01-01
    • 2011-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-04
    • 2020-05-24
    • 1970-01-01
    相关资源
    最近更新 更多