Amazing QR!一款 Python 二維碼生成器!

Java陈序员發表於2024-11-21

大家好,我是 Java陳序員

如今在生活中,二維碼隨處可見。資訊獲取、網站跳轉、結賬支付……一掃二維碼全部搞定。

今天,給大家介紹一款基於 Python 實現的二維碼生成器!

關注微信公眾號:【Java陳序員】,獲取開源專案分享、AI副業分享、超200本經典計算機電子書籍等。

工具介紹

Amazing-QR —— Python 二維碼生成器,支援生成普通二維碼、帶圖片的藝術二維碼(黑白與彩色)、動態二維碼(黑白與彩色)

下面是官方生成的一些示例二維碼:

工具安裝

工具依賴 Python 3, 需要先安裝好 Python 環境。

安裝好 Python 環境後,使用 pip 一鍵安裝:

pip install amzqr

安裝成功後,執行如下命令:

amzqr -h

輸出如下資訊,說明安裝成功:

usage: amzqr [-h]
             [-v {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40}]
             [-l {L,M,Q,H}] [-p PICTURE] [-c] [-con CONTRAST] [-bri BRIGHTNESS] [-n NAME] [-d DIRECTORY]
             Words

positional arguments:
  Words                 The words to produce you QR-code picture, like a URL or a sentence. Please read the README
                        file for the supported characters.

options:
  -h, --help            show this help message and exit
  -v {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40}, --version {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40}
                        The version means the length of a side of the QR-Code picture. From little size to large is 1
                        to 40.
  -l {L,M,Q,H}, --level {L,M,Q,H}
                        Use this argument to choose an Error-Correction-Level: L(Low), M(Medium) or Q(Quartile),
                        H(High). Otherwise, just use the default one: H
  -p PICTURE, --picture PICTURE
                        the picture e.g. example.jpg
  -c, --colorized       Produce a colorized QR-Code with your picture. Just works when there is a correct '-p' or '--
                        picture'.
  -con CONTRAST, --contrast CONTRAST
                        A floating point value controlling the enhancement of contrast. Factor 1.0 always returns a
                        copy of the original image, lower factors mean less color (brightness, contrast, etc), and
                        higher values more. There are no restrictions on this value. Default: 1.0
  -bri BRIGHTNESS, --brightness BRIGHTNESS
                        A floating point value controlling the enhancement of brightness. Factor 1.0 always returns a
                        copy of the original image, lower factors mean less color (brightness, contrast, etc), and
                        higher values more. There are no restrictions on this value. Default: 1.0
  -n NAME, --name NAME  The filename of output tailed with one of {'.jpg', '.png', '.bmp', '.gif'}. eg. exampl.png
  -d DIRECTORY, --directory DIRECTORY
                        The directory of output.

工具使用

Amazing-QR 安裝好後,可以使用命令列方式生成普通二維碼、藝術二維碼、動態 Gif 二維碼

引數說明

  • -v:控制邊長,範圍是 1 至 40,數字越大邊長越大
  • -l:控制糾錯水平,範圍是 L、M、Q、H,從左到右依次升高
  • -p:用來將 QR 二維碼影像與一張同目錄下的圖片相結合,產生一張黑白圖片
  • -c:可以使產生的圖片由黑白變為彩色的
  • -con:用以調節圖片的對比度,1.0 表示原始圖片,更小的值表示更低對比度,更大反之,預設為 1.0
  • -bri:用來調節圖片的亮度,其餘用法和取值與 -con 相同
  • -n:控制檔名,格式可以是 .jpg、.png、.bmp、.gif
  • -d:控制二維碼圖片輸出位置

生成普通二維碼

1、在當前目錄下生成一個普通二維碼

在命令後輸入連結,然後在當前目錄中產生相應的二維碼圖片檔案。

amzqr https://chencoding.top:8090

預設輸出的二維碼圖片檔名為:qrcode.png

2、自定義邊長和糾錯等級

amzqr https://chencoding.top:8090 -v 10 -l Q

3、自定義生成二維碼圖片路徑和檔名

amzqr https://chencoding.top:8090 -d E:\github -n codechen.jpg  

生成藝術二維碼

1、與一張同目錄下的圖片相結合,產生一張黑白 QR 二維碼影像

amzqr https://chencoding.top:8090 -p codechen.png

2、將產生的圖片由黑白變為彩色

amzqr https://chencoding.top:8090 -p codechen.png -c

3、自定義調節圖片的對比度和亮度

amzqr https://chencoding.top:8090 -p codechen.png -c -con 1.5 -bri 1.6

生成動態 Gif 二維碼

動態二維碼與上述的帶圖片的二維碼的生成方法沒什麼區別,只需要採用 .gif 格式的圖片生成二維碼即可。

amzqr https://chencoding.top:8090 -p codechen.gif -c

注意:如果使用了 -n 引數自定義輸出的檔名,切記其格式也必須是 .gif 格式。

以上就是 Amazing-QR 生成二維碼的使用,個人覺得這是一款很不錯的二維碼生成器,上手也十分簡單!快去安裝體驗吧~

專案地址:https://github.com/x-hw/amazing-qr

最後

推薦的開源專案已經收錄到 GitHub 專案,歡迎 Star

https://github.com/chenyl8848/great-open-source-project

或者訪問網站,進行線上瀏覽:

https://chencoding.top:8090/#/

大家的點贊、收藏和評論都是對作者的支援,如文章對你有幫助還請點贊轉發支援下,謝謝!


相關文章