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
    }

     
     
  • 相关阅读:
    在X++中编译并执行C#脚本
    XML的序列化读取方式
    在Dynamics AX 2009中调用Crystal Reports
    AspDotNetStorefront中事件处理页面开发的注意事项
    WCF服务开发中的SecurityNegotiationException异常
    Visual Studio 2010 RC版发布
    初探.NET 4.0中的Entity Framework
    入学十年
    HP dv1606tn 笔记本安装Windows 7经验一则
    在VS.NET2008中使用并发布Crystal Reports ActiveX组件
  • 原文地址:https://www.cnblogs.com/seven077/p/7273895.html
Copyright © 2011-2022 走看看