如何在iOS中减少过滤器图像大小

时间:2016-02-20 10:18:25

标签: ios swift image memory

我正在使用swift来开发图像过滤器视图。用户可以通过相机捕获图像或从图像库中选择一个图像。然后我的应用程序将根据该图像创建8个过滤器图像并将其显示给用户。用户可以选择其中一个过滤器图像以在更大的图像视图上显示。下面是生成过滤器图像的代码。如果图像很大,我的应用程序将创建一些大的过滤器图像,这会导致内存使用量增加。有没有办法减小滤镜图像的大小?

func outputImage(filter: CIFilter, originalImage: UIImage) -> UIImage{
    let inputImage = CIImage(image: originalImage)
    filter.setValue(inputImage, forKey: kCIInputImageKey)
    let cgImage = context!.createCGImage(filter.outputImage!, fromRect: (filter.outputImage?.extent)!)
    return UIImage(CGImage: cgImage, scale: 1, orientation: originalImage.imageOrientation)
}

1 个答案:

答案 0 :(得分:0)

要缩小图像尺寸,您可以使用:

newImage = UIImageJPEGRepresentation(image: UIImage, compressionQuality: CGfloat)