微信小程序 本地图片按照屏幕尺寸处理

发布时间 - 2026-01-11 02:38:51    点击率:

微信小程序 本地图片按照屏幕尺寸处理

前言:

个人感觉微信小程序的IDE用起来有时候不太方便,可能是之前用惯了Eclipse的原因吧。微信小程序的开发工具不支持直接将文件拷贝到目录下,所以首先要将图片文件导入到本地目录下,然后编写工具类获取屏幕的宽度和高度,具体步骤如下图。

1、本地图片导入

步骤一:选择最左侧的菜单中的项目


步骤二:选择打开后将图片直接拷贝到新建的image文件夹下

图片导入完成后,项目的整体目录结构如下图所示,

2、按屏幕尺寸自适应图片宽和高

步骤一:编写工具函数,返回封装后的屏幕高度和宽度

打开根目录下的utils文件夹下的utils.js文件,个人感觉这个类似Java里面的工具类,具体代码如下:

/** 
 * 获取移动端显示屏的宽和高, 
 * 参数:e, 
 * return viewSize (包含显示屏的宽和高) 
 */ 
function getViewWHInfo(e){ 
  var viewSize={}; 
  var originalWidth = e.detail.width;//图片原始宽  
  var originalHeight = e.detail.height;//图片原始高  
  wx.getSystemInfo({ 
   success: function (res) {  
    //读取系统宽度和高度 
    var viewWidth = res.windowWidth; 
    var viewHeight = res.windowHeight;  
    console.log(originalWidth + " " + originalHeight); 
    console.log("宽:" + viewWidth + "高" + viewHeight); 
    viewSize.width = viewWidth; 
    viewSize.height = viewHeight; 
   } 
  }); 
  return viewSize; 
} 
//导出接口--必须要写 
module.exports = { 
 getViewWHInfo: getViewWHInfo 
}  

步骤二:编辑脚本文件

打开index文件夹下的index.js文件,将原有的内容全部删除,并将下列代码直接复制,首先调用require函数将工具类进行实例化,其中data里面设置的是我们在index.wxml文件中需要读取的变量,imageLoad函数将绑定图片加载事件bindLoad, imageUtil.getViewWHInfo(e)该句调用了上面自定义的函数。

//index.js 
//获取应用实例 
//获取工具类的应用实例  
var imageUtil = require('../../utils/util.js');  
var app = getApp() 
Page({ 
 data:{ 
  imageUrl:"../image/1.jpg", 
  viewHeigh:"", 
  viewWidth:"" 
 }, 
 onLoad: function () { 
 }, 
 imageLoad:function(e){ 
  var viewSize = imageUtil.getViewWHInfo(e); 
  //console.log(viewSize.heigh); 
  this.setData({ 
   viewHeigh: viewSize.height, 
   viewWidth: viewSize.width 
  }); 
   
 } 
}) 

步骤三:编辑图片标签

打开index文件夹下的index.wxml文件,删除原有的全部内容,将下面的图片插入代码直接复制粘贴,其中style表示的是标签的样式,width:{{viewWidth}}表示图片的宽度是取index.js文件中所赋的值,height和src同理,bindload事件表示该图片加载的时候绑定了index.js文件imageLoad函数,并且在图片加载时执行该函数。

<image  
style="width: {{viewWidth}}px; height: {{viewHeigh}}px;" src="{{imageUrl}}" bindload="imageLoad"> 
</image> 

最后效果图:

以上就是微信小程序 本地图片按照屏幕尺寸处理的实例详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# 微信小程序  # 图片尺寸处理  # 小程序  # 处理图片  # 微信小程序 地图定位简单实例  # 微信小程序 地图(map)实例详解  # 微信小程序 使用腾讯地图SDK详解及实现步骤  # 微信小程序 高德地图SDK详解及简单实例(源码下载)  # 微信小程序 地图map详解及简单实例  # 微信小程序中进行地图导航功能的实现方法  # 微信小程序开发之map地图实现教程  # 微信小程序教程之本地图片上传(leancloud)实例详解  # 微信小程序之获取当前位置经纬度以及地图显示详解  # 一次微信小程序内地图的使用实战记录  # 的是  # 加载  # 屏幕尺寸  # 如下图  # 应用实例  # 目录下  # 不太  # 如有  # 希望能  # 并将  # 拷贝到  # 自定义  # 不支持  # 所示  # 要将  # 后将  # 谢谢大家  # 定了  # 绑定  # 惯了 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: phpredis提高消息队列的实时性方法(推荐)  PHP 500报错的快速解决方法  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  高防服务器如何保障网站安全无虞?  如何在阿里云完成域名注册与建站?  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  Android使用GridView实现日历的简单功能  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  Laravel如何记录自定义日志?(Log频道配置)  如何用PHP工具快速搭建高效网站?  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  高端建站三要素:定制模板、企业官网与响应式设计优化  PythonWeb开发入门教程_Flask快速构建Web应用  Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明  WordPress 子目录安装中正确处理脚本路径的完整指南  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  网站建设整体流程解析,建站其实很容易!  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  如何在景安云服务器上绑定域名并配置虚拟主机?  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  如何用JavaScript实现文本编辑器_光标和选区怎么处理  谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复  香港网站服务器数量如何影响SEO优化效果?  php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】  JavaScript如何实现音频处理_Web Audio API如何工作?  如何在服务器上三步完成建站并提升流量?  Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践  浅谈redis在项目中的应用  如何在云虚拟主机上快速搭建个人网站?  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  简单实现Android验证码  在线教育网站制作平台,山西立德教育官网?  EditPlus中的正则表达式 实战(2)  北京网站制作公司哪家好一点,北京租房网站有哪些?  如何续费美橙建站之星域名及服务?  Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】  php打包exe后无法访问网络共享_共享权限设置方法【教程】  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  专业商城网站制作公司有哪些,pi商城官网是哪个?  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】  html如何与html链接_实现多个HTML页面互相链接【互相】  如何快速搭建自助建站会员专属系统?  Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南  Laravel如何使用withoutEvents方法临时禁用模型事件  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  Java遍历集合的三种方式  如何用wdcp快速搭建高效网站?