Search code examples
swiftexif

EXIF data read and write


I searched for getting the EXIF data from picture files and write them back for Swift. But I only could find predefied libs for different languages.

I also found references to "CFDictionaryGetValue", but which keys do I need to get the data? And how can I write it back?


Solution

  • I'm using this to get EXIF infos from an image file:

    import ImageIO
    
    let fileURL = theURLToTheImageFile
    if let imageSource = CGImageSourceCreateWithURL(fileURL as CFURL, nil) {
        let imageProperties = CGImageSourceCopyPropertiesAtIndex(imageSource, 0, nil)
        if let dict = imageProperties as? [String: Any] {
            print(dict)
        }
    }
    

    It gives you a dictionary containing various informations like the color profile - the EXIF info specifically is in dict["{Exif}"].