Git Product home page Git Product logo

viviyoyovivi / amazing-qr Goto Github PK

View Code? Open in Web Editor NEW

This project forked from x-hw/amazing-qr

0.0 0.0 0.0 8 MB

๐Ÿ’ฎ amazing QRCode generator in Python (supporting animated gif) - Python amazing ไบŒ็ปด็ ็”Ÿๆˆๅ™จ๏ผˆๆ”ฏๆŒ gif ๅŠจๆ€ๅ›พ็‰‡ไบŒ็ปด็ ๏ผ‰

License: GNU General Public License v3.0

Python 100.00%

amazing-qr's Introduction

Amazing-QR

former name PyPI - Downloads PyPI - Python Version PyPI PyPI - Wheel PyPI - Downloads PyPI - License GitHub code size in bytes macos linux windows

sponsor

่ฝฌๅˆฐไธญๆ–‡็‰ˆ

Overview

Python QR Code Generator

Generate common qr-code, artistic qr-code (black & white or colorized), animated qr-code (black & white or colorized).

Contents

Examples

Install

# via pip
pip install amzqr

Usage

Terminal Way

(TIPS: If you haven't install amzqr, you should python(3) amzqr.py instead of amzqr blow.)

# summary
amzqr 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]

Common QR-Code

#1 Words
amzqr https://github.com
  • Just input a URL or a sentence, then get your QR-Code named 'qrcode.png' in the current directory.
#2 -v, -l
amzqr https://github.com -v 10 -l Q
  • The default size of QR-Code depends both on the numbers of words you input and the level, while the default level (Error Correction Level) is H (the highest).

  • Customize: If you want to control the size and the error-correction-level, use the -v and -l arguments.

    -v representing the length is from a minimum of 1 to a maximum of 40.

    -l representing the error correction level is one of L, M, Q and H, where L is the lowest level and H is the highest.

#3 -n, -d
amzqr https://github.com   -n github_qr.jpg   -d .../paths/
  • The default output-filename is 'qrcode.png', while the default output-directory is current directory.

  • Customize: You can name the output-file and decide the output-directory. Notice that if the name is as same as a existing file, the old one will be deleted.

    -n representing the output-filename could be in the format one of .jpg๏ผŒ .png ๏ผŒ.bmp ๏ผŒ.gif .

    -d means directory.

Artistic QR-Code

#1 -p
amzqr https://github.com -p github.jpg
  • The -p is to combine the QR-Code with the following picture which is in the same directory as the program. The resulting picture is black and white by default.
#2 -c
amzqr https://github.com -p github.jpg -c
  • The -c is to make the resulting picture colorized.
#3 -con, -bri
amzqr https://github.com -p github.jpg [-c] -con 1.5 -bri 1.6
  • The -con flag changes the contrast of the picture - a low number corresponds to low contrast and a high number to high contrast. Default: 1.0.

  • The -bri flag changes the brightness and the parameter values work the same as those for -con. Default: 1.0.

Animated GIF QR-Code

The only difference from Artistic QR-Code mentioned above is that you should input an image file in the .gif format. The you can get your black-and-white or colorful qr-code. Remember that when you use -n to customize the output-filename, then the output-filename must end by .gif.

Import Way

from amzqr import amzqr

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

details about each parameter are as mentioned above

# help(amzqr)
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

Tips

  • Use a nearly square picture instead of a rectangle one.

  • If the size of the picture is large, you should also choose a rightly large -v instead of using the default one.

  • If part of the picture is transparent, the qr code will look like:

    You can change the transparent layer to white, and then it will look like:

Supported Characters

  • Numbers: 0~9

  • Letters: a~z, A~Z

  • Common punctuations:

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

Environment

  • Python 3

License

  • GPLv3

Buy me a coffee

GitHub Sponsors

Since the GitHub Sponsors is unavailable in China yet...

wechatpay

wechatpay

alipay

alipay

๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰ Thanks for your support. ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰

amazing-qr's People

Contributors

alichaudry avatar dependabot[bot] avatar patrick91 avatar x-hw avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.