微信小程序实现图片放大缩小,并截取指定区域图片

要在小程序中实现图片放大缩小是着实不容易呀,还要把用户选择的指定区域生成图片,简直令人发指。

不多说,上烧鸡(代码)

首先还是先来看看要实现的效果

这里写图片描述

用户可以在指定的区域中滑动,放大,缩小自己的图片,点击确定之后,把方框中的区域生成图片。这个和上传头像功能差不多。

首页我们要做的就是怎么才能让照片完美的显示在页面。图片一般分为横版和竖版图片,这两种情况要分开显示。

wx.chooseImage({
      count: 1, 
      sizeType: ['original'], 
      success: function (res) {
   
        wx.getImageInfo({
          src: res.tempFilePaths[0],
          success: function (res) {
   
            //console.log(res.width);
            //console.log(res.height);
            var str = res.width / res.height;
            if(str > 1){
  //横版图片

            }else{
  //竖版图片

            }
          }
        })
      }
})

调用wx.getImageInfo方法,拿到用户选择的图片的宽高,用宽除以高就可以判断图片的类型了。

接下来就是处理图片的宽高了,假设方框的大小是400*400,那么:

wx.chooseImage({
      count: 1, 
      sizeType: ['original'], 
      success: function (res) {
   
        wx.getImageInfo({
          src: res.tempFilePaths[0],
          success: function (res) {
   
            //console.log(res.width);
            //console.log(res.height);
            var str = res.width / res.height;//图片的宽高比
            if(str > 1){
  //横版图片
              _this.data.height = 400;//图片的显示高度为400
  • 21
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 20
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值