微信小程序图片压缩

微信小程序图片压缩,第1张

微高兄信小程序图片压缩有三种方法,一种是使用官方提供的接口 wx.compressImage(Object object) ;一种是通过压缩图片的大小,利用canvas重绘来得到压缩图片;最后一种安装第三方图片压缩包。

由于第一种方法网上很多人说压缩不明显或者失效,所以选择使用canvas重绘来实现图片压缩。同时,该种方法可以控制图片的最大尺寸,保持上传图片大小尺寸相差不多。在我们的学生节晚会小程序中,屏幕显示图片会比较美观一致。

1. 通过 wx.chooseImage 接口选择相机图片

2. 通过 wx.getImageInfo 接口获取图片信息(长宽,类型)

3. 计算压缩比例和最终图片的长宽

5. 通过 wx.canvasToTempFilePath 接口将画布内容导出为图片并获取图片路径

wxml 文件

在文件末尾插入 canvas 组件,通过设置left和配隐top值确保图片不会显示在可视范围内。

一定要设置 canvas-id,这是canvas绘图和导出图片必备的属性。

js 文件

设置与页面绑定的数据:canvas的大小,培念厅也是压缩后图片的大小

1. 将画布内容导出为图片时,指定destWidth和destHeight为压缩后图片的大小。这里遇到过玄学bug,不指定的话,有时候图片不会压缩到规定的大小。

小程序的image组件提供了缩放的模式选择,默认的scaletofill就是设置固定的宽高模式比较少使用,更多的是需要自适应宽高的情况。

widthfix多适用于通栏,width:100%,高度不同设备销孙自适应的情况。此时会按照原图比列自动缩放高度,常用于轮播图。

aspectFill多用用在固定大小的范围内显示,区别是可以保留一边,除去通栏外一般用处较多。

个别情况下需要宏斗链图片始终居中缩放,多用在用户头像圆环之类,一般留在保留中心蔽孙内容的部分,文档中暂没,需要单独设置。

1、在小程序的app.json里配置window.viewport,可以根据屏幕宽度等自适应缩放。毁顷旦

2、在小程序的index.html的head标签中添加乎胡,纤扰可以根据屏幕宽度等自适应缩放。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12412320.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-23
下一篇2023-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存