欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

微信小程序 動態(tài)的設(shè)置圖片的高度和寬度詳解及實例代碼

 更新時間:2017年02月24日 09:34:47   作者:預(yù)見才能遇見  
這篇文章主要介紹了微信小程序 動態(tài)的設(shè)置圖片的高度和寬度詳解及實例代碼的相關(guān)資料,需要的朋友可以參考下

微信小程序圖片等比例縮放 動態(tài)的獲取圖片的高度和寬度 動態(tài)的設(shè)置圖片的高度和寬度

前言:

在小程序布局中,如果圖片不是固定高度和高度,但image設(shè)置的是固定的高度和寬度,這時候原始圖片相對image設(shè)置的固定高度和寬度不是等比例大小,那么這張圖片就會變形,變的不清晰。這時就可以使用下面的等比例縮放的方式縮放圖片,讓圖片不變形。或者通過image的bindload方法動態(tài)的獲取圖片的高度和寬度,動態(tài)的設(shè)置圖片的高度和寬度,是圖片布局的高度和寬度和原始圖片的高度和寬度相等。

1.圖片等比例縮放工具

//Util.js 
 
class Util{ 
 
  /*** 
   * 按照顯示圖片的寬等比例縮放得到顯示圖片的高 
   * @params originalWidth 原始圖片的寬 
   * @params originalHeight 原始圖片的高 
   * @params imageWidth   顯示圖片的寬,如果不傳就使用屏幕的寬 
   * 返回圖片的寬高對象 
  ***/ 
  static imageZoomHeightUtil(originalWidth,originalHeight,imageWidth){ 
    let imageSize = {}; 
    if(imageWidth){ 
      imageSize.imageWidth = imageWidth; 
      imageSize.imageHeight = (imageWidth * originalHeight) / originalWidth; 
    }else{//如果沒有傳imageWidth,使用屏幕的寬 
      wx.getSystemInfo({  
        success: function (res) {  
          imageWidth = res.windowWidth;  
          imageSize.imageWidth = imageWidth; 
          imageSize.imageHeight = (imageWidth * originalHeight) / originalWidth; 
        }  
      }); 
    } 
    return imageSize; 
  } 
 
  /*** 
   * 按照顯示圖片的高等比例縮放得到顯示圖片的寬 
   * @params originalWidth 原始圖片的寬 
   * @params originalHeight 原始圖片的高 
   * @params imageHeight  顯示圖片的高,如果不傳就使用屏幕的高 
   * 返回圖片的寬高對象 
  ***/ 
  static imageZoomWidthUtil(originalWidth,originalHeight,imageHeight){ 
    let imageSize = {}; 
    if(imageHeight){ 
      imageSize.imageWidth = (imageHeight *originalWidth) / originalHeight; 
      imageSize.imageHeight = imageHeight; 
    }else{//如果沒有傳imageHeight,使用屏幕的高 
      wx.getSystemInfo({  
        success: function (res) {  
          imageHeight = res.windowHeight; 
          imageSize.imageWidth = (imageHeight *originalWidth) / originalHeight; 
          imageSize.imageHeight = imageHeight; 
        }  
      }); 
    } 
    return imageSize; 
  } 
 
} 
 
export default Util; 

2.使用image組件加載圖片,通過bindload動態(tài)的獲取圖片的高度和寬度,動態(tài)的設(shè)置圖片的高度和寬度   index.wxml  (../pro.png是本地圖片)

<image bindload="imageLoad" style="width:{{imageWidth}}px;;height:{{imageHeight}}px;" src="../pro.png"/> 

index.js

import Util from '../common/Util'; 
 
Page({ 
 data:{ 
    imageWidth:0, 
    imageHeight:0 
 }, 
 imageLoad: function (e) {  
    //獲取圖片的原始寬度和高度 
    let originalWidth = e.detail.width; 
    let originalHeight = e.detail.height; 
    //let imageSize = Util.imageZoomHeightUtil(originalWidth,originalHeight); 
 
    //let imageSize = Util.imageZoomHeightUtil(originalWidth,originalHeight,375); 
    let imageSize = Util.imageZoomWidthUtil(originalWidth,originalHeight,145); 
 
    this.setData({imageWidth:imageSize.imageWidth,imageHeight:imageSize.imageHeight});  
 } 
})  

微信小程序圖片等比例縮放 動態(tài)的獲取圖片的高度和寬度 動態(tài)的設(shè)置圖片的高度和寬度

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

最新評論