微信小程序中图片自适应及双指缩放

本文介绍了如何在微信小程序中实现图片的自适应和双指缩放功能。首先,通过上传图片并获取其宽高信息来实现图片的自适应展示。接着,利用小程序的触摸事件记录双指的初始距离和移动距离,根据两者关系判断缩放方向。通过设定缩放阈值,限制图片的最大缩放比例为2倍。整个过程结合了微信小程序的API和计算方法,为后续的图片裁剪功能奠定了基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

预览

微信小程序实现对图片的缩放与裁剪

思路

  • wx.chooseImage上传图片
  • wx.getImageInfo获取图片宽高等信息
  • bindtouchstart,bindtouchmove记录双指事件
  • 通过双指移动的距离与初始距离的关系判断缩放
  • 规定阈值,最大与最小缩放

开始操作

上传图片

由于上传的图片需要放大与缩小,所以我们首先要在style动态绑定widthheight,其次要设置overflowscroll
然后开始使用wx.chooseImage上传图片,代码如下:

 choose: function() {
   
   
    let that = this,
      width = that.data.width,
      height = that.data.height;
    wx.chooseImage({
   
   
      count: 1,
      sizeType: ['original', 'compressed'],
      sourceType: ['album', 'camera'],
      success(res) {
   
   
        const tempFilePaths = res.tempFilePaths[0];
        }
        )}

获取图片信息

由于小程序无法操作DOM,我们获取图片信息不能像往常一样通过document.get。在小程序中需要使用wx.getImageInfo获取图片的相关信息。获取到上传的图片的宽高后,可以根据宽高的比列,实现特定条件下的自适应。

wx.getImageInfo({
   
   
          
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值