从 UIImage 获取(读取)Exif 数据

Dix*_*ari 5 exif uiimage ios swift

我已经为此做了很多搜索,但没有得到任何适当的解决方案。

extension UIImage {

func getExifData() -> CFDictionary? {
    var exifData: CFDictionary? = nil

    if let data = self.jpegData(compressionQuality: 1.0) {
    //if let data = self.pngData() {
        data.withUnsafeBytes {(bytes: UnsafePointer<UInt8>)->Void in
            if let cfData = CFDataCreate(kCFAllocatorDefault, bytes, data.count) {
                let source = CGImageSourceCreateWithData(cfData, nil)
                exifData = CGImageSourceCopyPropertiesAtIndex(source!, 0, nil)
            }
        }
    }
    return exifData
}
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用此代码,但我发现了这个结果。

{
    ColorModel = RGB;
    Depth = 8;
    Orientation = 1;
    PixelHeight = 1500;
    PixelWidth = 1124;
    ProfileName = "Display P3";
    "{Exif}" =     {
        PixelXDimension = 1124;
        PixelYDimension = 1500;
    };
    "{JFIF}" =     {
        DensityUnit = 0;
        JFIFVersion =         (
            1,
            0,
            1
        );
        XDensity = 72;
        YDensity = 72;
    };
    "{TIFF}" =     {
        Orientation = 1;
    };
}
Run Code Online (Sandbox Code Playgroud)

但我错过了很多信息。帮助我。

预先感谢