美文网首页
压缩图片

压缩图片

作者: 古月思吉 | 来源:发表于2018-12-07 10:46 被阅读0次
///图片压缩方法
func resetImgSize(sourceImage:UIImage, maxImageLength:CGFloat, maxSizeKB:CGFloat) -> UIImage {
    var maxSize = maxSizeKB
    var maxImageSize = maxImageLength
    if (maxSize <= 0.0) {
        maxSize = 1024.0
    }
    if (maxImageSize <= 0.0) {
        maxImageSize = 1024.0
    }
    //先调整分辨率
    var newSize = CGSize.init(width: sourceImage.size.width, height: sourceImage.size.height)
    let tempHeight = newSize.height/maxImageSize
    let tempWidth = newSize.width/maxImageSize;
    if (tempWidth > 1.0 && tempWidth > tempHeight) {
        newSize = CGSize.init(width: sourceImage.size.width / tempWidth, height: sourceImage.size.height / tempWidth)
    } else if (tempHeight > 1.0 && tempWidth < tempHeight){
        newSize = CGSize.init(width: sourceImage.size.width / tempHeight, height: sourceImage.size.height / tempHeight)
    }
    UIGraphicsBeginImageContext(newSize)
    sourceImage.draw(in: CGRect.init(x: 0, y: 0, width: newSize.width, height: newSize.height))
    let newImage = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext()
    var imageData = UIImageJPEGRepresentation(newImage!, 1.0)
    var sizeOriginKB : CGFloat = CGFloat((imageData?.count)!) / 1024.0
    //调整大小
    var resizeRate = 0.9
    while (sizeOriginKB > maxSize && resizeRate > 0.1) {
        imageData = UIImageJPEGRepresentation(newImage!,CGFloat(resizeRate))
        sizeOriginKB = CGFloat((imageData?.count)!) / 1024.0
        resizeRate -= 0.1
    }
    return UIImage.init(data: imageData!)!
}

相关文章

  • 图片压缩组件

    图片压缩 图片压缩

  • iOS 图片压缩方法

    两种图片压缩方法 两种图片压缩方法:压缩图片质量(Quality),压缩图片尺寸(Size)。 压缩图片质量 通过...

  • iOS 图片压缩限制大小最优解

    iOS 图片压缩限制大小最优解 图片的两种压缩方法 1.1 压缩图片质量 1.2 压缩图片尺寸 压缩图片使图片文件...

  • iOS 图片压缩限制大小最优解

    概要: 图片的两种压缩方法1.1 压缩图片质量1.2 压缩图片尺寸压缩图片使图片文件小于指定大小2.1 压缩图片质...

  • iOS 图片压缩限制大小

    一、两种图片压缩方法 两种压缩图片的方法:压缩图片质量(Quality),压缩图片尺寸(Size)。 压缩图片质量...

  • iOS 图片压缩方法

    两种图片压缩方法 两种压缩图片的方法:压缩图片质量(Quality),压缩图片尺寸(Size)。 压缩图片质量 N...

  • 图片压缩方法

    两种图片压缩方法 压缩图片质量(quality)、压缩图片尺寸(size) 压缩图片质量 或 前者可以控制压缩比例...

  • 图片懒加载之高斯模糊

    压缩原始图片 将原始图片压缩至1~2kb甚至更小的图片nature.jpg 压缩 java 图片压缩natur...

  • iOS 图片压缩方法

    图片压缩可以通过两种方式实现,压缩图片质量和压缩图片尺寸。如果对图片清晰度有要求的,可以先压缩图片质量,在压缩图片...

  • iOS 图片压缩方法

    iOS 图片压缩方法 更多图片处理方法见图片组件 BBWebImage iOS 图片压缩方法 两种图片压缩方法 两...

网友评论

      本文标题:压缩图片

      本文链接:https://www.haomeiwen.com/subject/dlrzqqtx.html