图片压缩指定大小内,图片格式转换,ls-compressimage

Installation

npm i ls-compressimage --save

Use

import compressImage from 'ls-compressimage'
new compressImage({
        res: data.imgTime, // 必选 资源
        justConversion: true, // 可选 声明了此字段说明只进行格式转换 res requestType responseType callback必填,其他随意
        width: 500, // 可选(justConversion存在可不选) (默认图片自身宽度,建议自定义) 压缩后图片宽度
        height: 800,//可选 (默认 自定义图片宽度/原生图片宽度*原生图片高度) 压缩后图片高度
        quality: 0.2, // 可选 (默认0.3) 压缩层级质量(0<quality<1)越大压缩越快 图片质量跨度相对低 越小则相反
        size: 200, // 必选(justConversion存在可不选) 压缩后图片大小 单位k
        requestType: 'base64', // 必选 传入文件类别 base64 | file | blob
        responseType: 'base64', // 必选 返回文件类别 base64 | file | blob
        imgType: 'image/jpeg', // 可选 (默认原生文件类型) 返回文件对象的文件类型
        fileName: 'ysl', // 如果responseType的类型为file和非justConversion 此选项可选 返回文件对象的文件名
        callback: (result) => {
          if (result === null) {
            alert('图片处理异常')
            return
          }
          this.params.mainImagePath = result
        } // 回调函数 返回处理后文件 如果为null 表示文件处理不了(原因 少了参数 参数不合法))
      })

Tip

参数requestType 必须对应 参数res的形态,否则处理可能异常
size结果为 <= size
如quality过小,则至多压缩25次,建议0.1~0.3 当然这个自己把握
width建议设置 手机拍照宽度都好几千 按比例压缩效果反而没自定义width好

优点

可处理多种文件状态,压缩快,行了吹不起来了 就这样吧,我是看到网上别人的压缩图片不好用然后自己写了一个,顺便分享,不喜勿喷

—end
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值