我可以将Photo Sphere XMP 元数据添加到等距矩形照片中。我将带有 XMP 元数据的照片上传到 Google Photos,Google Photos 能够被识别为球形照片。然后,我尝试将带有 XMP 元数据的照片保存到相机胶卷。我将照片从相机胶卷分享到 Google 相册,但 Google 相册不知道它是球形照片。我试图下载照片并分析它,发现 XMP 元数据都不见了。当照片保存到相机胶卷时,iOS 似乎会编辑元数据。有没有办法在将照片保存到相机胶卷时保留照片的 XMP 元数据?
// raw jpg data to NSData
NSString *img = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"equirectangular_orig.jpg"];
NSData* imgData = [[NSFileManager defaultManager] contentsAtPath:img];
NSMutableData *newImgData = [NSMutableData dataWithData:imgData];
// writing XMP metadata to newImgData
// ...
// ...
// saving the newImgData to new jpg file
NSString *path = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"] stringByAppendingPathComponent:@"equirectangular_xmp.jpg"];
NSURL *url = [NSURL fileURLWithPath:path];
[[NSFileManager defaultManager] removeItemAtPath:[url absoluteString] error:nil];
[newImgData writeToURL:url atomically:YES];
// saving the new jpg file to camera roll
UIImage *newImg = [UIImage imageWithData:newImgData];
UIImageWriteToSavedPhotosAlbum(newImg, self, nil, nil);