【微信小程序】image组件的4种缩放模式与9种裁剪模式

简介: 假设有一个容器(这个容器的宽高就是设置的样式),要将图片放进去。而aspectFit的特点就是保持图片不变形,且容器要“刚好”将这个图片装进去。如果原始图片比容器大,就要被等比例缩小;如果原始图片比容器小,就会被等比例放大。一直放大或缩小到图片的某一条边刚好和容器的一条边重合。

3c28c4c6783644a6b3a41843d646db0e.gif


🏆今日学习目标:第九期——image组件的4种缩放模式与9种裁剪模式

😃创作者:颜颜yan_

✨个人主页:颜颜yan_的个人主页

⏰预计时间:20分钟

🎉专栏系列:微信小程序开发


前言


哈喽大家好,本次是微信小程序专栏的第九期。在项目中,我们经常要面对图片的尺寸结合设计图的尺寸不同的情况。在这种情况下,我们必须要有所舍弃,或放弃等比例,或裁剪掉图片的一部分。本期的主要内容是image组件的4种缩放模式与9种裁剪模式。


注意:每期内容是连载呢,建议大家可以看看往期内容,更好理解噢~


每种模式的字面意思都很好理解。要更改图片的裁剪或缩放模式,只需要给image组件加上一个mode属性值。

缩放模式


scaleToFill


不保持纵横比缩放图片,使图片的宽高完全拉伸至填满image元素。


如下,当我们添加sacleToFill模式时,图片并没有发生任何变化。这是因为sacleToFill是缩放的默认模式,如果省略了mode,则小程序也会以sacleToFill的模式来缩放图片。


sacleToFill将改变图片的高宽比,强行让图片更改为样式指定的尺寸,使图片变形。当然,如果原始图片的宽高比例和要缩放的目标宽高比例相同,则不会变形,只是整体上放大或缩小了。


c5051df5b2d041858553361e11d62153.png

ff501d9d8f7141cda0af93d73bc94a0f.png


aspectFit


保持纵横比缩放图片,使图片的长边能完全显示出来。也就是说,可以完整地将图片显示出来。


假设有一个容器(这个容器的宽高就是设置的样式),要将图片放进去。而aspectFit的特点就是保持图片不变形,且容器要“刚好”将这个图片装进去。如果原始图片比容器大,就要被等比例缩小;如果原始图片比容器小,就会被等比例放大。一直放大或缩小到图片的某一条边刚好和容器的一条边重合。


如下,原始图片大于容器,就会被等比例缩小。


c61cceec232542319672a17c9bcf3242.png

6d73da265f554740aacdb19410a8994c.png


aspectFill


保持纵横比缩放图片,只保证图片的短边能完全显示出来。也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取。


这个模式同样保持图片的高宽比不会变形,但会让图片完全填满整个容器。如果原始图片尺寸大于容器,则需要等比例缩小,一边刚好接触容器,另外一边等于或超出容器,这样就可以完全填满了。


bf7eaf075a4f4b759066fd7226489302.png

5919e9d00a85487fb17ade0d538822a5.png


widthFix


宽度不变,高度自动变化,保持原图宽高比不变。


这个属性的特点是,图片不会按照设定的尺寸呈现,而是让宽缩放到指定尺寸,再动态计算高度。


73ffad2a84f6431ab73809546c72d69b.png

b9774fe140a74c248025fba351def284.png


剪裁模式


top


不缩放图片,只显示图片的顶部区域。


这个模式只保留了图片的上部,裁剪掉了剩余部分。如下可以发现,图片不仅裁掉了下面的部分,水平方向上也有裁剪,是由于这个模式不会缩放图片,所有我们设置的容器不能够在水平方向上完全把图片放进去,进而水平方向上也发生了裁剪。


ca62b3157b524a73933a26cb928ee4ac.png

9f281afc51c046efa96e3b5f86038448.png


bottom


不缩放图片,只显示图片的底部区域。


df10fa6449b748e992267109794c0425.png

e5f72d0ee4e3434b841bc6f323b37aef.png


center


不缩放图片,只显示图片的中间区域。


fc5b7576211c46ecb4a41f8f162665de.png

8a1a3afbd0024307b168fdb7a0710df2.png


left


不缩放图片,只显示图片的左边区域。


1d6f2cc76dce42eab874cb6e3ef290e4.png

4e6e1fa95fd84afe903263f7b207813b.png


right


不缩放图片,只显示图片的右边区域。


49697d4a723e415abfe6f628a861a200.png

22c9ee0e2ea245b0ad5f78f09c9da524.png


top left


不缩放图片,只显示图片的左上边区域。


cfd40f88701c443998f13aa3388558df.png

2bf6b8efde504513bfa9e9972c6b4e5e.png


top right


不缩放图片,只显示图片的右上边区域。


5e2fc5e2426c44f2ab2adf1e4a000d87.png

9e38cfaa1db0419aa69f2582ea9f1e34.png


bottom left


不缩放图片,只显示图片的左下边区域。


6cb3d0fcc2f04e778a1e98982960d4d3.png

442961a4efb7462498be4e231ed829e0.png


bottom right


不缩放图片,只显示图片的右下边区域。


6116765ac5fd4c15a6ed3dc807f23338.png

d80f894943eb49f28f6645d6fb96914e.png


总结


以上就是今天的学习内容啦~

如果有兴趣的话可以订阅专栏,持续更新呢~

咱们下期再见~


d20e640404404cc6bc5d1f8ab9683a3a.gif

相关文章
|
1月前
|
小程序 数据可视化 JavaScript
微信小程序:轻松实现时间轴组件
本文介绍了如何在微信小程序中实现一个可视化时间轴组件。该组件适用于展示用户资金流动、投资结算等时间节点,帮助用户直观了解资金去向。时间轴支持自定义节点形状、显示序号、倒序排列等功能,并通过插槽灵活定义动态内容。文中详细介绍了组件的设计与使用方法,以及如何结合动态 slot 实现自定义操作。该组件为展示用户资金信息提供了美观、易用的解决方案。
58 1
微信小程序:轻松实现时间轴组件
|
30天前
|
小程序
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合(更新版)
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合(更新版)
395 1
|
1月前
|
小程序 搜索推荐 API
微信小程序:自定义关注公众号组件样式
尽管关注公众号组件的样式固定且不可修改,但产品经理的需求却需要个性化的定制。在这种情况下,我们需要寻找解决方案,以满足这些特殊需求,尽管这可能有点棘手。
59 0
微信小程序:自定义关注公众号组件样式
|
1月前
|
小程序 前端开发 JavaScript
微信小程序图表制作利器:ECharts组件的使用与技巧
微信小程序图表制作利器:ECharts组件的使用与技巧
52 1
|
1月前
|
缓存 小程序 索引
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
177 1
|
1月前
|
小程序 JavaScript
微信小程序之input组件及其获取用户输入信息
微信小程序之input组件及其获取用户输入信息
53 1
|
2月前
|
小程序 容器
微信小程序常用组件的简单使用 view,scroll-view,swiper,swiper-item,text,rich-text,button,image
本文介绍了微信小程序中常用组件的使用方法,包括view、scroll-view、swiper与swiper-item、text与rich-text、button以及image组件。详细解释了各组件的功能、属性以及如何在小程序页面中进行使用。
微信小程序常用组件的简单使用 view,scroll-view,swiper,swiper-item,text,rich-text,button,image
|
1月前
|
小程序 前端开发 JavaScript
小程序入门之认识view和text组件
小程序入门之认识view和text组件
48 0
|
30天前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
452 7
|
30天前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
504 1

热门文章

最新文章