zoukankan      html  css  js  c++  java
  • 微信小程序开发之图片等比例缩放 获取屏幕尺寸图片尺寸 自适应

    wxml:

    <image style=" {{imagewidth}}px; height: {{imageheight}}px;"  src="{{imagefirstsrc}}" bindload="imageLoad"></image>  

    JS

    //index.js  

    //获取应用实例  

    var imageUtil = require('../../utils/util.js');  

    var app = getApp()  

    Page({  

      data: {  

          imagefirstsrc: 'http://bpic.588ku.com/back_pic/00/03/85/1656205138bbe2d.png',//图片链接  

          imagesecondsrc: 'http://bpic.588ku.com/back_pic/04/07/63/28581203949ca9d.jpg!/fw/400/quality/90/unsharp/true/compress/true',//图片链接  

          imagethirdsrc:'http://img1.gtimg.com/ent/pics/hv1/13/71/2061/134034643.jpg',  

          image 0,//缩放后的宽  

          imageheight: 0,//缩放后的高  

        },  

        onLoad: function () {  

        },  

        imageLoad: function (e) {  

      var imageSize = imageUtil.imageUtil(e)  

      this.setData({  

          image imageSize.imageWidth,  

          imageheight: imageSize.imageHeight  

      })  

      }  

    })  

    Util.js

    function imageUtil(e) {
    var imageSize = {};
    var originalWidth = e.detail.width;//图片原始宽
    var originalHeight = e.detail.height;//图片原始高
    var originalScale = originalHeight / originalWidth;//图片高宽比
    console.log('originalWidth: ' + originalWidth)
    console.log('originalHeight: ' + originalHeight)
    //获取屏幕宽高
    wx.getSystemInfo({
    success: function (res) {
    var windowWidth = res.windowWidth;
    var windowHeight = res.windowHeight;
    var windowscale = windowHeight / windowWidth;//屏幕高宽比
    console.log('windowWidth: ' + windowWidth)
    console.log('windowHeight: ' + windowHeight)
    if (originalScale < windowscale) {//图片高宽比小于屏幕高宽比
    //图片缩放后的宽为屏幕宽
    imageSize.imageWidth = windowWidth;
    imageSize.imageHeight = (windowWidth * originalHeight) / originalWidth;
    } else {//图片高宽比大于屏幕高宽比
    //图片缩放后的高为屏幕高
    imageSize.imageHeight = windowHeight;
    imageSize.imageWidth = (windowHeight * originalWidth) / originalHeight;
    }

    }
    })
    console.log('缩放后的宽: ' + imageSize.imageWidth)
    console.log('缩放后的高: ' + imageSize.imageHeight)
    return imageSize;
    }

    module.exports = {
    imageUtil: imageUtil
    }

     
     
  • 相关阅读:
    摩托罗拉挪动诉TiVo数字录像手艺专利侵权
    动静称Verizon三月末推出WP7手机
    2月25日中国观点股全线下跌 优酷网涨7.06%
    Verizon CEO称C版iPhone销售微弱
    外来往戏出海案例:热酷日本掘金之路
    摩根大通旗下基金或以4.5亿美元入股Twitter
    TCL通讯2010年净利润6.11亿元 同比增200%
    马克·扎克伯格和Facebook星球
    2月25日中国观点股评级:维持网易买入评级
    美媒评全球十家增速最快IT办事公司 当当网居首
  • 原文地址:https://www.cnblogs.com/seven077/p/7273895.html
Copyright © 2011-2022 走看看