compressImage 压缩图片

优质
小牛编辑
141浏览
2023-12-01

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 class="btn">选择图片</button>
压缩前:
<img class="img" />
压缩后:
<img 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参数为空或无效