はじめに
Swift4からUIImage型とData型の変換をシンプルに書けるようになったので紹介します。
特にUIImage型→Data型への変換はしばしばextensionを作っていましたが、それらと同じことが公式にできるようになりました。
UIImage型→Data型
image
をData型に変換したいUIImage型のインスタンスとします
// pngに変換する
image.pngData()
// jpegに変換する
// compressionQualityには0~1の範囲で圧縮率を指定する
image.jpegData(compressionQuality: 1)
Data型→UIImage型
data
をData型に変換したいUIImage型のインスタンスとします
// UIImage?型になるので、必要に応じてアンラップをする必要がある
UIImage(data: data)
// 強制アンラップしてUIImage型にする
UIImage(data: data)!
参考リンク
https://developer.apple.com/documentation/uikit/uiimage/1624096-pngdata
https://developer.apple.com/documentation/uikit/uiimage/1624115-jpegdata
https://developer.apple.com/documentation/uikit/uiimage/1624106-init