博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
opacity骚操作
阅读量:7277 次
发布时间:2019-06-29

本文共 749 字,大约阅读时间需要 2 分钟。

开篇如图,母亲节快乐@~@!

借着这个节日,结合下最近的需求:移动端h5生成图片没有二维码(如上),长按保存下来时候有二维码(如下)。我们来聊聊如何实现,文末配上不严谨的源码,感兴趣的看官自取啊~

到这里,某些大佬应该明白怎么简单操作,完成这个尴尬的需求了,不过之前自己还是费了点功夫,脑袋转不过弯啊。

是的,结合opacity进行骚操作:

  1. 没有二维码的图片(原材料)展示出来给用户
  2. 生成的带二维码的图片覆盖在没有二维码图片上面
  3. 带有二维码的图片opacity置为0

嗯,既然要生成图片,且为了缓解后端的压力,我们前端来生成图片~

生成图片

这里使用了进行图片的生成操作。至于为什么选择html2canvas进行图片的生成呢?可以参考下富途的文章--。

使用html2canvas需要注意的地方有:

  • 使用图片img来代替背景图,截取的清晰度更好
  • 浏览器兼容
  • CSS样式不支持的情况
  • 图片如果存在跨域问题,这个必须设置好代理允许其跨域
  • etc

opacity操作

接下来就是实现这个长按图片识别二维码的操作了,如上gif图。我长按了图片,给人的错觉就是按了那张没有带二维码的图片,实际上是按了带二维码的图片。因为两张图片的展示位置是一样的,带二维码的图片覆盖在最上面,并且其opacity设置为0了,所以长按的时候会出现识别图中二维码的字样。

就是这样啦,opacity结合absolute就可以轻松实现了?

对了,gif图的二维码图片是使用qrcode生成的。

以上,如果还是不怎么了解,可以clone我的代码(见下)下来跑下就明白了~

备注

图片来源网络,侵删

源码:

文章首发:

更多内容:

转载于:https://juejin.im/post/5cd811c5f265da035d0c9a6e

你可能感兴趣的文章
NodeJS初识
查看>>
苹果开发者公司账号添加个人开发者 - 加入不了开发者团队
查看>>
【Unity】10.4 类人动画角色的控制
查看>>
mysql客户端(Navicat)远程登录操作遇到问题1142
查看>>
CSS学习笔记
查看>>
OLAT & OLTP
查看>>
二叉搜索树
查看>>
BP神经网络
查看>>
使用Fidder理解http协议
查看>>
treetable 用法小例
查看>>
C++赋值语句和输入输出语句
查看>>
紫书 例题 10-17 UVa 1639(数学期望+分数处理+处理溢出)
查看>>
Linux 小知识翻译 - 「架构 续」(arch)
查看>>
Git 提交后开始自动构建
查看>>
bootstrap-datepicker使用
查看>>
Mobile web开发日记
查看>>
IView组件化之部署及按钮学习
查看>>
经典排序算法总结与实现 ---python
查看>>
CodeForces 909D Colorful Points
查看>>
PAT (Advanced Level) 1084. Broken Keyboard (20)
查看>>