JSAPI

  • compressImage

    压缩图片接口(安卓10.0.12版本支持,ios 10.0.15版本支持)

    使用方法

    AlipayJSBridge.call('compressImage', {
      apFilePaths: ["https://resource/apmlcc0ed184daffc5a0d8da86b2f518cf7b.image"], 
      compressLevel: 4
    }, function(result) {
      console.log(result);
    });
    

    代码演示

    基本使用

    <style>.img{ display:block; max-width: 100%; margin: 20px auto;}</style>
    <h1>点击按钮选择图片</h1>
    <button id="J_chooseImage" class="btn">选择图片</button>
    压缩前:
    <img id="J_imageViewer" class="img" />
    压缩后:
    <img id="J_compressedImage" class="img" />
    
    <script type="text/javascript">
    function ready(callback) {
      // 如果jsbridge已经注入则直接调用
      if (window.AlipayJSBridge) {
        callback && callback();
      } else {
        // 如果没有注入则监听注入的事件
        document.addEventListener('AlipayJSBridgeReady', callback, false);
      }
    }
    ready(function() {
      var btn = document.querySelector('#J_chooseImage');
    
      btn.addEventListener('click', function(e) {
        AlipayJSBridge.call(
          'chooseImage',
          { count: 1, publicDomain: true },
          function (result) {
            alert(JSON.stringify(result));
    
            var apFilePath = result.apFilePathsV2 || result.apFilePaths || [];
            if (typeof apFilePath === 'string') {
              try {
                apFilePath = JSON.parse(apFilePath);
              } catch (e) {}
            }
    
            if (apFilePath.length && /^https?:/.test(apFilePath[0])) {
              document.querySelector('#J_imageViewer').src = apFilePath[0];
    
              AlipayJSBridge.call('compressImage', {
                apFilePaths: apFilePath, 
                compressLevel: 0
              }, function(result) {
                document.querySelector('#J_compressedImage').src = result.apFilePaths[0];
              });
            }
          }
        );
      }, false);
    });
    </script>
    

    API

    AlipayJSBridge.call('compressImage', {
      apFilePaths: [filePaths], 
      compressLevel: int
    }, function(result) {
      console.log(result);
    });
    

    入参

    名称类型描述必选默认值版本
    apFilePathsarrayfilePathsY10.0.12
    compressLevelint压缩质量Y[4]10.0.12

    压缩质量

    compressLevel描述
    0低质量
    1中等质量
    2高质量
    3不压缩
    4根据网络适应

    出参

    回调函数带入的参数result: {error }

    名称类型描述
    apFilePathsarray压缩后的filePath

    错误

    errorCode描述
    2参数为空或无效