前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WeChat 如何理解rpx

WeChat 如何理解rpx

作者头像
Nian糕
修改2024-03-19 15:10:30
1.1K0
修改2024-03-19 15:10:30
举报
Unsplash
Unsplash

在小程序样式表中,我们绝大多数的长度单位都设置成 rpx,而不是我们常见的 px,使用 rpx 小程序会自动在不同的分辨率下进行转换,而使用 px 为单位则不会

UI 同学给我们的视觉稿一般是以 i6 为标准进行设计的,i6 的逻辑像素为 375*667 pt,视觉稿为物理像素 750*1334 px,其转换关系为 1px = 0.5 pt = 1rpx,我们在以往的移动端前端开发中,往往将视觉稿里的元素尺寸除以 2 而得到实际的元素尺寸,但在小程序中,可以按 1:1 的转换关系来设置元素尺寸,并能在不同分辨率设备下,保持一定的比例关系,下图是 100px 和 200rpx 的头像在 i6 和 iPad 设备上的显示效果

100px-200rpx-i6
100px-200rpx-i6
100px-200rpx-ipad
100px-200rpx-ipad

或许其他同学会有疑问,为什么 i6 分辨率是 375(逻辑分辨率 pt),而视觉稿一般给 750(物理分辨率 px)?这是因为逻辑分辨率 pt 是按内容尺寸计算的长度单位,其大小和屏幕的尺寸有关;而物理分辨率 px 是按像素点计算的单位,跟屏幕大小没有关系,两者之间的关系为:一个 pt 对应多少个 px,即一个长度里能够包含多少个 px

我们无法形容一个点有多大,但能通过点的个数来形容,在 i6 设备下,1 个 pt 包含了 2 个 px,如果不是以 i6 的标准进行做图,视觉稿与 rpx, px 的转换关系就不是整数倍了,计算起来也比较麻烦,下图是小程序模拟器给出的每种机型的分辨率,需要注意的是,这里的分辨率指的是逻辑分辨率 pt,以 i6 为例,水平方向有 375 个逻辑像素点,而竖直方向有 667 个逻辑像素点,每个逻辑像素点包含 2 个物理像素点

机型分辨率
机型分辨率

最后,在其他机型中,我们看到每个逻辑像素点包括 3 个或者更多的物理像素点,那是不是包含的物理像素点越多,我们所看到的画面就会越清晰?答案是不会,因为 Retina 屏已经达到我们肉眼所能分辨出来的极限

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档