轩枫阁

首页 / 移动前端

iPhone微信二维码长按识别不了?

前言

微信提供图片长按识别二维码跳转的功能,但是发现有时候在iPhone下并不是所有图都可以出现识别二维码。但是在Android的设备下可识别,这里究竟是什么原因呢?

识别方式

微信 6.7.3

Android

取整张图片分析,有二维码即可识别。

iOS

当图片的宽高或高宽比例超过竖屏2倍,采用的方案是截取当前屏幕分析,两端策略不一致。

所以当长图超过一定比例,二维码没在屏幕可视区域时,不会出现识别二维码。

测试图

图片尺寸:500*2170(比例为4.34)

测试机型:iPhone x

iPhone设备尺寸详情

计算结果:为达到直接识别二维码的效果,不同设备的最大比例如下

机型 最大比例
iPhone XS Max 4.33
iPhone X 4.33
iPhone 8P 3.56
iPhone 8 3.56
iPhone SE 3.55

得出结论,iPhone下图片最大比例不大于3.55均可长按识别。

2018/10 23  周二

基于Canvas的手绘风格图形库 Rough.js

前言

推荐一个基于Canvas的手绘风格图形JS库。

Rough.js

Rough.js 是一个轻量的(大约8k),基于Canvas的可以绘制出粗略的手绘风格库。

提供绘制线条、曲线、弧线、多边形、圆形和椭圆的基础能力,同时支持绘制SVG路径。 查看全文

2018/03 18  周日

DNS预解析详解

前言

DNS解析时间可能导致大量用户感知延迟,DNS解析所需的时间差异非常大,延迟范围可以从1ms(本地缓存结果)到普遍的几秒钟时间。所以利用DNS预解析是有意义的。

DNS与域名解析

DNS全称为Domain Name System,即域名系统,是域名和IP地址相互映射的一个分布式数据库。

域名解析即通过主机名,最终得到该主机名对应的IP地址的过程。

浏览器对网站第一次的域名DNS解析查找流程依次为:

浏览器缓存-系统缓存-路由器缓存-ISP DNS缓存-递归搜索

sdfgbf
查看全文

2017/05 28  周日

CSS3动画性能

CSS动画属性性能

  • CSS动画属性会触发整个页面的重排relayout、重绘repaint、重组recomposite
  • Paint通常是其中最花费性能的,尽可能避免使用触发paint的CSS动画属性,这也是为什么我们推荐在CSS动画中使用 webkit-transform: translateX(3em) 的方案代替使用 left: 3em ,因为left会额外触发layout与paint,而webkit-transform只触发整个页面composite

查看全文

2016/11 15  周二

纸飞机许愿

x

钢琴节奏

请选择弹奏的曲谱

    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 1
    • 2

    [返回曲谱列表]