簡介html
二維碼又稱QR Code,是一種矩陣式二維條碼;是用某種特定的幾何圖形按照必定規則在平面上分步的黑白相間的圖形記錄數據符號信息的。它可將數字,字符,中文,日文字母,特殊符號等記錄下來。python
二維碼一共有40個尺寸,官方稱爲Version,好比:git
Version 1: 21*21的矩陣github
Version 2: 25*25的矩陣工具
Version 3: 29 *29的矩陣oop
版本的遞加,其尺寸加4,公式爲: (V -1) * 4 + 21, 最高版本爲爲Version 40 即 177*177 的圖形。編碼
功能圖形: 不參與編碼數據,其主要部分:spa
位置探測圖形: 用於協助掃描軟件定位QR碼並標記座標系.net
位置探測圖形分隔符: 用於區分功能圖形和編碼區域code
定位圖形:是黑白相間線條,用於表示密度和肯定尺寸
校訂圖形:Version2以上纔有,用於進一步校訂座標系
編碼區域: 編碼存儲區域,其主要部分:
格式信息: 存放了如容錯級別,數據掩碼,BCH容錯碼等格式化數據信息
版本信息: 也就是Version的規格
數據和糾錯別字: 存儲實際的數據和糾錯碼數據
若是在線使用的話,推薦工具:https://cli.im/
Python QRCode的使用:
官網: https://pypi.org/project/qrcode/5.1/ 安裝命令:
pip install qrcode -- 二維碼必備 pip install Image -- 二維碼依賴庫
簡單使用:
#!/usr/bin/env python # coding=utf-8
# 參考:https://github.com/lincolnloop/python-qrcode
import qrcode img = qrcode.make('https://pypi.org/project/qrcode/5.1/') img.save('test1.png')
圖示效果:
更詳細的用法:
#!/usr/bin/env python # coding=utf-8
# 參考:https://github.com/lincolnloop/python-qrcode
import qrcode qr = qrcode.QRCode( # 設置Version,範圍1~40 即21*21 ~ 177*177 version=1, # 糾錯率,有L,M,Q,H四種,分別對應7%,15%,25%,30%,默認爲ERROR_CORRECT_M error_correction=qrcode.constants.ERROR_CORRECT_L, # 每一個方塊的像素個數 box_size=10, # 二維碼距圖像外圍邊框的距離,默認爲4 border=4, ) qr.add_data('https://github.com') qr.make(fit=True) img = qr.make_image(fill_color="black", back_color="white") # 直接顯示二維碼 img.show()
參考,感謝原做者分享:
http://www.javashuo.com/article/p-ayufjjfc-bz.html
https://blog.csdn.net/bf02jgtrs00xktcx/article/details/82047714