Create beautiful QR-codes with perfectly fitting logos!
Project description
A command-line tool to create beautiful QR-codes with perfectly fitting logos!
Usage
qrpic takes (for the moment) only SVG images and produces an output SVG. You invoke it simply with
qrpic "data text or link you want in your qr code" path-to-logo.svg
qrpic computes the exact shape of the SVG and removes QR-code pixels that are in the way, so they don’t disturb your logo.
qrpic offers various options to control the logo size, adding shells and buffer areas around your logo so it looks proper with just the right amount of spacing. For more info, query qrpic --help:
usage: qrpic [-h] [--out FILE] [--shell {none,viewbox,convex,boundary-box}] [--ppi VALUE] [--svg-area VALUE] [--border VALUE] [--error-correction {high,medium,low}] [--buffer VALUE] [--shape-resolution VALUE] TEXT SVG-FILE Generates QR-codes with centered logo images from SVGs in a beautiful manner, by not just overlaying them but also removing QR-code pixels properly so they do not interfere with the logo. Note that this tool does not (yet) check whether the generated QR-code is actually valid. positional arguments: TEXT The QR-code text. SVG-FILE Logo SVG to center inside the QR code to be generated. optional arguments: -h, --help show this help message and exit --out FILE Output filename. If none specified, outputs to stdout. --shell {none,viewbox,convex,boundary-box} Different types of shells to enclose the given SVG shape where to remove QR-code pixels. none (default): No shell geometry is applied. Removes pixels as per geometry inside the given svg. viewbox: Assume the SVG defined viewbox to be the shell. convex: Applies a convex hull. boundary-box: Applies a minimal boundary box around the SVG geometry. --ppi VALUE Pixels per inch. Can be used to override the default value of 96 for SVGs as defined per standard. --svg-area VALUE Relative area of the SVG image to occupy inside the QR-code (default 0.2). --border VALUE Amount of border pixels around the final QR-code. Default is 1. --error-correction {high,medium,low} QR-code error correction level. By default "high" for maximum tolerance. --buffer VALUE A round buffer around the SVG shape/shell to add (default is 0.04). The buffer is a relative measure. To deactivate the buffer, just pass 0 as value. --shape-resolution VALUE The interpolation resolution of circular geometry such as SVG circles or buffers (default 32).
Roadmap
Better SVG parsing and shape extraction
Support non-vector graphics such as PNG, JPG, etc. Properly handle image transparency
QR-code verification step
Use minimally necessary QR-code error correction level
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file qrpic-0.3.tar.gz
.
File metadata
- Download URL: qrpic-0.3.tar.gz
- Upload date:
- Size: 10.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.7 CPython/3.9.6 Linux/5.13.6-100.fc33.x86_64
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 03a961d0478fb5c6c1b92b2b703889f29ebc804353d433681d102136b5dc8067 |
|
MD5 | 7dcac19c7a4a3315263b1f89b4427426 |
|
BLAKE2b-256 | fe4dfed0314dbdf7c8ab1ef3449b87cebaddc9495e02fea2db412971864c0ec1 |
File details
Details for the file qrpic-0.3-py3-none-any.whl
.
File metadata
- Download URL: qrpic-0.3-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.7 CPython/3.9.6 Linux/5.13.6-100.fc33.x86_64
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f560411e70df6b19ebc62d6a094a99a42004e6a95cc57e9be6ab1b2757a5ceba |
|
MD5 | cdccbfbc0f937a2421fc820efbb86700 |
|
BLAKE2b-256 | d65bb424dd725efa561674c09bd70da2dec283d3155702f5b837b570ee373578 |