heic格式转换成jpg并保留元数据

    if format == .heic { // .heic格式转成jpg
        DispatchQueue.global().async {
            guard let ciImage = CIImage(data: self) else {
                let new = image.jpegData(compressionQuality: 1) ?? self
                handler(data: new)
                return
            }
            let ciContext = CIContext.init()
            var imageData: Data?
            if #available(iOS 10.0, *) {
                imageData = ciContext.jpegRepresentation(of: ciImage, colorSpace: ciImage.colorSpace!, options: [:])
            }
            if imageData == nil {
                imageData = image.jpegData(compressionQuality: 1.0) ?? self
            }
            handler(data: imageData!)
        }
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容