陈新龙
二维码又称二维条码,是用某种特定的几何图形按一定规律在平面(二维方向上)分布的、黑白相间的、记录数据符号信息的图形。而不同种类的二维码遵循的规律就是码制,常用的码制有:Data Matrix、Maxi Code、Aztec、QR Code、Vericode、PDF417、Ultracode、Code 49、Code 16K等。QR Code是一种移动设备上流行的二维码编码方式,它比传统的条形码能存更多的信息,也能表示更多的数据类型。
在日常生活中二维码随处可见,那么大家会不会好奇,二维码是怎么制作的?二维码会不会有一天被用完呢?我们是否自己也可以制作一个属于我们自己的二维码?在日常生活中我们最常见的就是黑白二维码,当然不仅仅只存在黑白二维码还有彩色二维码和动态二维码,今天我们可以用Python软件自己独立制作一个二维码,一起来看看吧。
首先在Python环境中安装第三方库MYQR,这个库是专门用来制作个性二维码的,只需要简简单单两三行代码,就可以像变魔法一样绘制出一个二维码。MYQR库中包含了很多参数,如words、version、level、picture、colorized等,其中,words为非默认参数,其余几个为默认参数。在输入时必须为words参数赋值,其他参数如果没有赋值会自动按照库中的默认值运行。
words参数含义是二维码指向链接,可以将句子或者链接作为参数输入。
version的含义是边长,它的类型是整数,用于控制边长,范围是1到40,数字越大边长越大,默认边长是取决于你输入的信息的长度和使用的纠错等级。
level用来控制二维码纠错水平,范围是L:约可纠错7%的数据码字、M纠错15%、Q纠错25%、H纠错30%,默认为H最高。
picture参数含义是结合图片,将QR二维码图像与一张同目录下的图片相结合,产生一张黑白图片作为背景。也可以通过colorized选项修改成彩色背景。
首先我们来制作一张静态二维码:
from MyQR import myqr
myqr.run(words="welcome to program world")
二维码的其他参数都不需要设置就能在同目录下生成一张qrcode.png的图片了。
我在words里添加了内容“welcome to our program world”运行代码后会产生一张二维码的图片,通过手机微信扫一扫或者电脑上识别二维码的程序就可以解码读出包含的文字内容了(图1)。
在运行结果myqr.run()里填写二维码产生的内容可以是文字也可以是链接。
如果觉得简单的黑白二维码太过于普通,还可以在文件夾中准备好比较有特色的背景图片或者gif动图。通过修改picture和colorized参数便可以实现彩色二维码和动态二维码的图片,代码如图2。
MyQR库让我们充分感受到了Python的友好和强大,日后我也会继续和大家分享更多Python的知识与技巧,与大家一起学习更多的新知识(图3)。