にリサイズない:UIImageを圧縮するが、私は以下の持っている最大サイズ
extension UIImage{
func compressToMaxSize(bytes: Int) -> UIImage{
var data: Data = UIImageJPEGRepresentation(self, 1.0)!
var compressionRatio: CGFloat = CGFloat(bytes)/CGFloat(data.count)
while data.count > bytes && compressionRatio > 0{
data = UIImageJPEGRepresentation(self, compressionRatio)!
compressionRatio = compressionRatio - 0.05
}
return UIImage(data: data)!
}
}
圧縮サイズは、元の第十程度であるので、それはバイトパラメータよりも小さいサイズでUIImageを返しませんが、私は不審です圧縮比は約0.46であった。私はここで何が欠けていますか?
whileループでは、元の画像のUIImageJPEGRepにデータを設定し、その値をサイズとして使用します。 – Latcie