利用python生成定製二維碼
阿新 • • 發佈:2020-08-28
目錄
概述
Python 二維碼生成器
可生成普通二維碼、帶圖片的藝術二維碼(黑白與彩色)、動態二維碼(黑白與彩色)。
安裝
# 通過 pip
pip(3) install myqr(or MyQR)
使用方法
命令列方式
(提示:如果你尚未安裝 MyQR ,以下內容請使用python(3) myqr.py
而非myqr
。)
# 概括 myqr Words [-v {1,2,3,...,40}] [-l {L,M,Q,H}] [-n output-filename] [-d output-directory] [-p picture_file] [-c] [-con contrast] [-bri brightness]
普通二維碼
直接在終端命令列輸入以下示例即可生成二維碼圖片。
#1 Words
myqr https://github.com
- 在命令後輸入連結或者句子作為引數,然後在程式的當前目錄中產生相應的二維碼圖片檔案,預設命名為” qrcode.png“。
#2 -v, -l
myqr https://github.com -v 10 -l Q
-
預設邊長是取決於你輸入的資訊的長度和使用的糾錯等級;
而預設糾錯等級是最高階的H。
-
自定義:如果想要控制邊長和糾錯水平就使用
-v
和-l
引數。-v
控制邊長,範圍是1至40,數字越大邊長越大;-l
控制糾錯水平,範圍是L、M、Q、H,從左到右依次升高。
#3 -n, -d
myqr https://github.com -n github_qr.jpg -d .../paths/
-
預設輸出檔名是“ qrcode.png ",而預設儲存位置是當前目錄。
-
自定義:可以自己定義輸出名稱和位置。注意同名檔案會覆蓋舊的。
-n
控制檔名,格式可以是.jpg
,.png
,.bmp
,.gif
;-d
控制位置。
藝術二維碼
#1 -p myqr https://github.com -p github.jpg
- 引數
-p
用來將QR二維碼影象與一張同目錄下的圖片相結合,產生一張黑白圖片。
#2 -c
myqr https://github.com -p github.jpg -c
- 加上引數
-c
可以使產生的圖片由黑白變為彩色的。
#3 -con, -bri
myqr https://github.com -p github.jpg [-c] -con 1.5 -bri 1.6
- 引數
-con
用以調節圖片的對比度,1.0 表示原始圖片,更小的值表示更低對比度,更大反之。預設為1.0。 - 引數
-bri
用來調節圖片的亮度,其餘用法和取值與-con
相同。
動態GIF二維碼
動態二維碼與上述的帶圖片的二維碼的生成方法沒什麼區別,你只要採用 .gif
格式的圖片即可生成黑白或者彩色的動態二維碼。但注意如果使用了 -n
引數自定義輸出的二維碼檔名,切記其格式也必須是 .gif
格式。
作為匯入檔案
# 安裝模組後
from MyQR import myqr
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()
)
以下各個引數已經在上文有所介紹
# help(myqr)
Positional parameter
words: str
Optional parameters
version: int, from 1 to 40
level: str, just one of ('L','M','Q','H')
picutre: str, a filename of a image
colorized: bool
constrast: float
brightness: float
save_name: str, the output filename like 'example.png'
save_dir: str, the output directory
使用提示
可用字元
-
數字 0 到 9
-
大小寫的英文字母
-
常用英文標點符號和空格
· , . : ; + - * / \ ~ ! @ # $ % ^ & ` ' = < > [ ] ( ) ? _ { } | and (space)
MyQR 引數
從官方文件整理的常用引數如下:
-n
:生成二維碼的名稱-p
:二維碼加入的圖片,支援.jpg
、.gif
、.png
、.bmp
格式-c
:選擇是否生成彩色二維碼,如果不設定預設為黑白-v
:控制邊長,範圍是 1 至 40,數字越大邊長越大-l
:控制糾錯水平,範圍是 L、M、Q、H 從左到右依次升高-d
:控制輸出二維碼的儲存位置-con
:用以調節圖片的對比度,1.0 表示原始圖片,更小的值表示更低對比度,更大反之。預設為 1.0-bri
:用來調節圖片的亮度,其餘用法和取值與-con
相同
二維碼分類介紹
二維碼有以下幾種分類