微信小程序上传图片base64返回被压缩质量

Posted on 2020-04-09 09:29  陈小鑫  阅读(1287)  评论(0编辑  收藏  举报

wx.chooseImage(Object object)

微信给出的api  配置参数上传原图或压缩图

object.sizeType 的合法值

1.original  原图

2.compressed  压缩图

举例:

      let that = this;
      // 选择图片
      wx.chooseImage({
        sizeType:'original',
        success: res => {
          wx.showLoading({
            title: '上传中...',
          })
          var filepath = res.tempFilePaths[0]
          // 获取图片大小
          wx.getFileInfo({
            filePath: filepath,
            success: function (res) {
              if (res.size >= 5242880) {   //我这里限制的是5兆
                wx.hideLoading();
                wx.showToast({
                  title: "图片太大",
                  icon: "none"
                })
                return
              }
              // 转base64
              wx.getFileSystemManager().readFile({
                filePath: filepath, //选择图片返回的相对路径
                encoding: 'base64', //编码格式
                success: res => {
                  //成功的回调
                  var imgUrl = 'data:image/png;base64,' + res.data;
                  var base64 = res.data;
      //base64 返回  下一步处理
        .......
                }
              })

如果不设置参数默认是压缩图

原文链接https://developers.weixin.qq.com/miniprogram/dev/api/media/image/wx.chooseImage.html