程序员是怎么分享微信二维码的

  你还在平平无奇的把微信二维码截图保存,然后再转发给其他人吗?不得不说一句,这也太low了。今天小编给你支一招,让你瞬间提升B格,把格局打开,让你的小伙伴见了都不得不给你递一杯卡布奇诺。
在这里插入图片描述
在这里插入图片描述

1、预期成果

  目的是要把你的微信二维码信息隐藏在一段字符串中,然后对这段字符串解码,就会在linux终端用ascii码生成你的二维码名片,效果大概如下:(这是小编的个人博客主页,各位小伙伴点点关注❤️❤️❤️)

图1 ASCII表示二维码
图2 UTF-8表示二维码

2、制作过程

2.1 二维码转换

  首先你要把想要制作的二维码保存下来,比如微信名片,就把自己的微信二维码保存下来,然后利用一些在线网页工具提取二维码中的信息,这里小编找了好多网站,大部分网站生成的字符串是不能直接跳转到个人微信名片的,而只是微信主页,在这里推荐两个网站,可以直接使用。
草料二维码解码器
在线二维码解码器
  当我们把二维码图片解码后,就会生成一个像URL的一串字符串,为什么说像URL,因为复制到网页是打不卡的,只能跳转到微信的主页。
在这里插入图片描述
在这里插入图片描述
  这个像URL的字符串就是我们需要的东西,这里面就包含着微信二维码名片的核心内容,你可以使用任何在线工具或者其他方法将这个字符串转为二维码,微信都可以扫出来。

https://u.wechat.com/EIEmULxxxxxx-xxxxxxxxxx

2.2 生成文本二维码

2.2.1 qrencode工具介绍

  这里就可以借助linux中的一些工具,在终端生成二维码,这里我们使用qrencode。直接复制下面的指令并输入密码就可以下载并安装。

sudo yum install libpng libpng-devel qrencode -y

  这个工具就可以在终端生成二维码,具体用法如下:

[xd@VM-4-5-centos ~]$ qrencode [OPTION] [STRING]
OPTIONS:
  -o:输出的二维码文件名。如xd.png。-表示输出到控制台。
  -s:指定图片大小,默认为3个像素。
  -t:指定产生的图片类型。默认为PNG。可以是PNG/ANSI/ANSI256/ASCIIi/UTF8等。
STRING:
  可以是text、url等格式

2.2.2 使用工具生成二维码

  此时我们就可以直接通过该工具生成utf-8或者ascii形式的二维码。
在这里插入图片描述

2.3 二维码与命令结合

  上述虽然在linux终端生成了二维码,但这并不是我们想要的,因为此时没有安装qrencode工具的人是无法获取二维码的,难道你分享二维码的时候还要让人家安装其他工具,这么麻烦的事情我们肯定是不想要的。
  其实生成的二维码是由大量的#字符组成的,我们可以利用gzip工具对其进行压缩,但是gzip的压缩后并不是可打印字符集,没法在终端界面显示,此时就要使用 base64 编码来加工一下。

[xd@VM-4-5-centos ~]$ qrencode -t ascIIi https://u.wechat.com/EIEmULxxxxxx-xxxxxxxxxx | gzip | base64

在这里插入图片描述

  这样我们就得到了一串经过base64编码后的字符串,这段字符串解码并解压后就是我们的二维码。
在这里插入图片描述
  所以我们只需把如下信息分享给对方,对方在自己linux终端执行该代码,就可以生成你的微信二维码。

echo "H4sIAEhFe2IAA92UQQ7EMAgD7/uKlfr/P+6hqmCMQ+n2UhWpaoSIY2ySbbsbn9sIT4P4Io7cnu9q
ABG4+9YjF1u0xkB0pQGrNUuIWAftixDkMmahcOQy0IJq+691pEbWIG/RMCzURoqZ7W4aUflUqwVE
ljHPAvnlKsOi+2vWOqIGZlvZqsorLFQB5XEiZx1s1YE8Gi14RymgSm1YqIF1VrSNZjoJR1FZ2d6R
yLu7stRCT1YPTuTkiZR1oIV/tbwnTSO+7zrk41fLQZPXyBGu65MAiP/jPRA/IKTk26MIAAA=" | base64 --decode | gzip -d

3、总结

  <1>.利用工具将微信二维码转换成字符串
  <2>.使用qrencode工具,把字符串生成的二维码压缩、编码
  <3>.利用base64解码并解压,即可
说白了就两行代码:

qrencode -t [ASCIIi 或 UTF8] +工具生成的字符串 | gzip | base64
echo +“上一行代码生成二点一长串字符串” | base64 --decode | gzip -d 
  • 51
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 29
    评论
A: 很高兴为您生成一个Java程序员微信头像。以下是您可以使用的Java代码: ```java import java.awt.Color; import java.awt.Graphics; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; public class JavaProgrammerAvatar { public static void main(String[] args) throws IOException { //设置头像宽度与高度 int width = 400; int height = 400; //创建一个 BufferedImage 对象 BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); //获取 Graphics2D 对象 Graphics g2d = image.createGraphics(); //设置背景色为青色 g2d.setColor(new Color(135, 206, 235)); g2d.fillRect(0, 0, width, height); //设置边框颜色为深灰色 g2d.setColor(new Color(105, 105, 105)); g2d.drawRect(0, 0, width - 1, height - 1); //绘制头像主体部分(圆形) g2d.setColor(new Color(255, 255, 255)); g2d.fillOval(50, 50, 300, 300); //绘制眼睛 g2d.setColor(new Color(0, 0, 0)); g2d.fillOval(125, 150, 25, 25); g2d.fillOval(250, 150, 25, 25); //绘制嘴巴 g2d.drawArc(125, 200, 150, 100, 180, 180); //释放 Graphics 对象占用的内存空间 g2d.dispose(); //设置文件保存路径,将生成的图片保存至本地 File output = new File("JavaProgrammer.png"); ImageIO.write(image, "png", output); } } ``` 这段代码将生成一个400x400像素的头像,背景色为青色,边框为深灰色,并在中心绘制圆形的头像主体,其中包括两个黑色的圆形眼睛和一个弧形的嘴巴。可以将其作为您的微信头像使用。
评论 29
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

做1个快乐的程序员

感谢支持,一起加油努力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值