Search code examples
gpsexif

Does apple's CGImageMetadataSetValueWithPath work properly?


I'm trying to geotag a photo and I'm using this dictionary:

var gpsProperties: [(NSString, String)] = [
    ("exif:GPSLongitude", "\(abs(coordinate.longitude))"),
    ("exif:GPSLongitudeRef", coordinate.longitude < 0 ? "W" : "E"),
    ("exif:GPSLatitude", "\(abs(coordinate.latitude))"),
    ("exif:GPSLatitudeRef", coordinate.latitude < 0 ? "S" : "N")]

And as far as the exif:GPSLongitude and exif:GPSLatitude saves correctly, the Ref part doesn't. Regardless of what I specify there, the N and E are saved. Am I doing something wrong? Or is it a bug by apple?


Solution

  • It indeed was a bug in MacOS, with MacOS High Sierra, the bug doesn't exist.