代码片段: https://developers.weixin.qq.com/s/MKvCAomf7lAB
参考数据
let data = {
width: 1170, // 屏幕分辨率宽度
height: 2532, //屏幕分辨率高度
diagonal: 6.1, // 设备尺寸
} // 这些参考数据可以从百度
难点:获取data 没有现成的接口,主动收集,涉及的市面手机型号过多。无法做到每款手机都兼容。
重点代码
const res = wx.getSystemInfoSync()
const dpr = res.pixelRatio;
const dpi = Math.sqrt(system.height ** 2 + system.width ** 2) / system.diagonal; // dpr * 160;
const ratio = dpi / dpr / 96; // 和显示长度的倍数相差
let max_width = {
cm: Math.ceil(system.width / dpr / 96 / ratio * 2.54),
in: Math.ceil(system.width / dpr / 96 / ratio),
}
参考文章
http://wjhsh.net/windfic-p-13174010.html
https://www.keepnight.com/archives/110/
https://developers.weixin.qq.com/community/develop/doc/00022638ba8bf856d8fbc975251000
示例代码效果
参考上线案例