如何通过压缩函数得到运行数组

How to run array through compression function

我想要它,以便可以压缩数组中包含的多个 UIImage,然后 运行 通过压缩函数,但是我不知道如何获得允许数组的函数要通过它传递的 UIImages。任何帮助将非常感激。这是函数。

 func compressForUpload(original:UIImage, withHeightLimit heightLimit:CGFloat, andWidthLimit widthLimit:CGFloat)->UIImage{



    let originalSize = original.size
    var newSize = originalSize

    if originalSize.width > widthLimit && originalSize.width > originalSize.height {

        newSize.width = widthLimit
        newSize.height = originalSize.height*(widthLimit/originalSize.width)

    } else if originalSize.height > heightLimit && originalSize.height > originalSize.width {

        newSize.height = heightLimit
        newSize.width = originalSize.width*(heightLimit/originalSize.height)
    }

    UIGraphicsBeginImageContext(newSize)
    original.drawInRect(CGRectMake(0, 0, newSize.width, newSize.height))
    let compressedImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    return compressedImage
}

这是将数组发送到函数的代码。

let compressedImage = self.compressForUpload(self.selectedImages, withHeightLimit: 720, andWidthLimit: 1080)
                            let imageData = UIImagePNGRepresentation(compressedImage)
                            let imageFile = PFFile(name: "image.png", data: imageData!)

                            post["ImageFile"] = imageFile

创建一个包装函数,它接受 returns 一组图像。在内部,该函数在循环中使用您现有的函数。最好将功能在逻辑上分开,而不是将它们混合在一起(尽管这完全有可能,但不可重用)。