不到50行代码实现公众号二维码动画
最近遇到一种二维码,这种二维码是个动画,动画中的每个二维码都不同,不停的变,但是用微信扫描的时候还都可以用。这种二维码可以很好的吸引注意、可以节省图片空间(只需要发一个就好)。下面是我用自己的公众号做的二维码动画,不管你怎么扫描打开的都是我的公众号,但是不同的是会区分来源的渠道不同。
我们都知道gif动画是由一张张图片,按照一定的顺序排列,并且安排一定的速度切换形成的动画。那么要想做一个公众号的二维码动画,首先我们得有很多种公众号的二维码。
我的公众号的地址是:http://weixin.qq.com/r/NjhqctXEt4jIrZER920k,我可以用这个地址来生成公众号的二维码,这种其他人扫描的时候,就可以关注我的公众号[飞雪无情]了。
假设现在我们已经通过这个地址(内容)生成公众号的二维码,但是我们要生成多个怎么办呢?最直接的思路就是改变地址,只有改变它,才能改变用于生成二维码的内容,这样生成的二维码才会不同。但是我们还有个前提是还要可以打开关注我们的公众号,所以我们只能为这个地址添加一些参数,这样二维码的功能不变,但是生成的二维码改变了。比如我这里添加一个渠道参数,用于标记用户的来源。
- http://weixin.qq.com/r/NjhqctXEt4jIrZER920k?channel=baidu
- http://weixin.qq.com/r/NjhqctXEt4jIrZER920k?channel=weixin
- http://weixin.qq.com/r/NjhqctXEt4jIrZER920k?channel=qq
- http://weixin.qq.com/r/NjhqctXEt4jIrZER920k?channel=toutiao
以上的就是我们添加参数后的示例,有的用户从百度来,有的从头条,有的从微信等等。这种我们就有了不同的地址,现在我们就可以用他们生成不同的二维码图片了。
要生成二维码,我们需要使用github.com/skip2/go-qrcode
这个库,我以前有过介绍,可以参考 https://www.flysnow.org/2017/09/29/go-qrcode.html 。
|
|
以上就可以生成一个大小为256*256的问二维码图片了,非常简单,只需要一行代码。我们更换地址内容就可以生成不同的二维码了,这样我们就有了多张二维码图片,就可以开始制作公众号二维码动画了。
|
|
为了便于代码的扩展,我先定义了用户的来源渠道。
|
|
以上代码就是我们改变二维码地址内容,生成不同的二维码,并且把他们添加到gif动画中,设置好0.1秒间隔变一次图片。
|
|
最后我们生成这张二维码gif动画,用以上代码实现。现在我们打开生成的qr_code.gif
,会看到二维码动画不停的变,拿起手机微信扫描下,就可以关注我的公众号飞雪无情
。
现在二维码动画生成好了,但是不美观,因为二维码的中间没有公众号的LOGO,我们可以看到微信为我们生成的公众号二维码是有这个头像LOGO的,这样整个二维码就好看多了,现在我们也实现这个功能,把我们的二维码动画美化一下。
二维码带LOGO头像的思路其实就是把我们的头像缩小,放到二维码头像的正中间即可。我们为每个二维码都添加一个头像LOGO,这样我们的公众号二维码动画就有了头像LOGO。
|
|
我们把生成二维码的代码改成这样,就为我们生成的每张二维码添加的头像LOGO。
现在,在运行一下代码吧,就可以看到美化后的公众号二维码动画了。
二维码动画因为含有多张图片,所以可以承载的信息也比较多,比如可以用来做活码拉人入群),用户随机扫描一个就可以直接入群,这样就可以解决群100人限制的问题。二维码动画的好处还有很多,等着大家去挖掘。
生成微信公众号二维码动画的完整源代码请扫码下方二维码,关注飞雪无情
公众号后,公众号回复二维码
三个字即可获得。
本文为原创文章,转载注明出处,欢迎扫码关注公众号
flysnow_org
或者网站asf https://www.flysnow.org/ ,第一时间看后续精彩文章。觉得好的话,请猛击文章右下角「在看」,感谢支持。