如何通过压缩函数得到运行数组
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 一组图像。在内部,该函数在循环中使用您现有的函数。最好将功能在逻辑上分开,而不是将它们混合在一起(尽管这完全有可能,但不可重用)。
我想要它,以便可以压缩数组中包含的多个 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 一组图像。在内部,该函数在循环中使用您现有的函数。最好将功能在逻辑上分开,而不是将它们混合在一起(尽管这完全有可能,但不可重用)。