爱生活
爱分享

如何使用Python创建艺术、彩色、动态二维码?

二维码在线演示:动态二维码

项目地址:GitHub

二维码(2-dimensional bar code)是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的;在代码编制上巧妙地利用构成计算机内部逻辑基础的“0”、“1”比特流的概念,使用若干个与二进制相对应的几何形体来表示文字数值信息,通过图象输入设备或光电扫描设备自动识读以实现信息自动处理:它具有条码技术的一些共性:每种码制有其特定的字符集;每个字符占有一定的宽度;具有一定的校验功能等。同时还具有对不同行的信息自动识别功能、及处理图形旋转变化点。

艺术、彩色、动态二维码是在普通黑白二维码基础上修改而来的,原理与普通二维码基本相同。

动态二维码

动态二维码

使用 myqr 模块生成动态二维码

模块安装

pip install myqr

模块使用

from MyQR import myqr

import os

version, level, qr_name = myqr.run( words, version=1, level=’H’, picture=None, colorized=False, contrast=1.0, brightness=1.0, save_name=None, save_dir=os.getcwd() )

参数:

version 控制边长,范围是1至40,数字越大边长越大;

level 控制纠错水平,范围是L、M、Q、H,从左到右依次升高。 

picture 用来将QR二维码图像与一张同目录下的图片相结合,产生一张带底图的二维码,支持GIF格式图片。

colorized 可以使产生的图片由黑白变为彩色的。

contrast 用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0

brightness 用来调节图片的亮度,其余用法和取值与 contrast 相同。

save_name 控制文件名,格式可以是 .jpg, .png ,.bmp ,.gif ;

save_dir 控制位置。

可用字符

数字 0 到 9

大小写的英文字母

常用英文标点符号和空格

· , . : ; + – * / \ ~ ! @ # $ % ^ & ` ‘ = < > [ ] ( ) ? _ { } | and  (space)

依赖库

pillow

numpy

imageio

使用提示

请采用正方形或近似正方形的图片

建议在图片尺寸大的时候使用 -v 的值也应该适当变大。

如果图片有透明无色部分,最终效果是:

你可以将透明部分修改成白色,最终效果会变成

根据我国《计算机软件保护条例》第十七条规定:“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。本站资源仅供个人学习交流,请于下载后 24 小时内删除,不允许用于商业用途,否则法律问题自行承担。零度小窝 » 如何使用Python创建艺术、彩色、动态二维码?

评论 抢沙发

评论前必须登录!