Interface en ligne de commande ****************************** L'installation de pyStrich expose un script de console "pystrich" avec une sous-commande par format et une sortie PNG / SVG / EPS / ASCII / terminal / DXF. Astuce: Pour essayer l'outil en ligne de commande sans installer pyStrich dans un environnement, exécutez-le via pipx ou uvx : $ pipx run pystrich datamatrix --text "Rausschmeißer" $ uvx pystrich datamatrix --text "Rausschmeißer" $ pystrich qrcode --text "https://en.wikipedia.org/wiki/Jasper,_Missouri" -o jasper.svg $ pystrich code128 --text "Dalton" -o dalton.png $ pystrich ean13 --text "5050070007664" -o ean13.png $ echo "DLB 573" | pystrich code39 -o code39.png $ pystrich datamatrix --text "Rausschmeißer" # terminal preview Le dernier exemple produit : █ ▀ █▄█ █ █▄█ █▄▀▄ █▄ ████▀ ▀ ██▄ █▄██▀▄▄▀▄█▀ ▄█▀▀▄ █▀▄ ███▀ ▄█▄▀▀▄▄▀▄ ██ █▄▄▄██▄▄▀▄ ▀ ▄ ██ ▄█ ▀█▄▀▀▀ ▄█▄▀▄ █ ▀ █ ▄▀▀▀ ▀█ █▄█▄ █▀▄ █▀█▀ █ ▀▄▀▀█▄▄ █▄█▄█▄███▄██▄▄▄██▄ Référence ========= Génère des codes-barres 1D/2D (Code 39, Code 128, EAN-13, 2 parmi 5 entrelacé, ITF-14, Data Matrix, QR Code, PDF417, Aztec Code). Fournissez l'entrée via --text ou stdin. pystrich [-h] [--version] FORMAT ... options de pystrich ------------------- * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--version"** - affiche le numéro de version du programme et quitte pystrich code39 --------------- Code 39 (1D) pystrich code39 [-h] [--text TEXT] [-o OUTPUT] [-t {auto,png,svg,eps}] [--dark-hex HEX] [--light-hex HEX] [--bar-width BAR_WIDTH] [--height HEIGHT] [--full-ascii] [--show-label | --no-show-label] options de pystrich code39 ~~~~~~~~~~~~~~~~~~~~~~~~~~ * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--text"** "TEXT" - texte à encoder (par défaut : lecture depuis stdin) * **"-o"** "OUTPUT", **"--output"** "OUTPUT" - chemin de sortie ; '-' ou absent écrit sur stdout * **"-t"** "OUTPUT_TYPE", **"--type"** "OUTPUT_TYPE" - format de sortie ; 'auto' se déduit du nom de fichier -o ou du contexte de sortie * **"--dark-hex"** "HEX" - couleur sombre (premier plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--light-hex"** "HEX" - couleur claire (arrière-plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--bar-width"** "BAR_WIDTH" - largeur de la barre la plus étroite (par défaut : 3) * **"--height"** "HEIGHT" - hauteur de l'image en pixels * **"--full-ascii"** - active l'encodage Code 39 ASCII complet * **"--show-label"**, **"--no-show-label"** - affiche le libellé en clair sous les barres pystrich code128 ---------------- Code 128 (1D) pystrich code128 [-h] [--text TEXT] [-o OUTPUT] [-t {auto,png,svg,eps}] [--dark-hex HEX] [--light-hex HEX] [--bar-width BAR_WIDTH] [--height HEIGHT] [--show-label | --no-show-label] options de pystrich code128 ~~~~~~~~~~~~~~~~~~~~~~~~~~~ * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--text"** "TEXT" - texte à encoder (par défaut : lecture depuis stdin) * **"-o"** "OUTPUT", **"--output"** "OUTPUT" - chemin de sortie ; '-' ou absent écrit sur stdout * **"-t"** "OUTPUT_TYPE", **"--type"** "OUTPUT_TYPE" - format de sortie ; 'auto' se déduit du nom de fichier -o ou du contexte de sortie * **"--dark-hex"** "HEX" - couleur sombre (premier plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--light-hex"** "HEX" - couleur claire (arrière-plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--bar-width"** "BAR_WIDTH" - largeur de la barre la plus étroite (par défaut : 3) * **"--height"** "HEIGHT" - hauteur de l'image en pixels * **"--show-label"**, **"--no-show-label"** - affiche le libellé en clair sous les barres pystrich ean13 -------------- EAN-13 (1D, 12 ou 13 chiffres) pystrich ean13 [-h] [--text TEXT] [-o OUTPUT] [-t {auto,png,svg,eps}] [--dark-hex HEX] [--light-hex HEX] [--bar-width BAR_WIDTH] [--height HEIGHT] options de pystrich ean13 ~~~~~~~~~~~~~~~~~~~~~~~~~ * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--text"** "TEXT" - 12 ou 13 chiffres (par défaut : lecture depuis stdin) * **"-o"** "OUTPUT", **"--output"** "OUTPUT" - chemin de sortie ; '-' ou absent écrit sur stdout * **"-t"** "OUTPUT_TYPE", **"--type"** "OUTPUT_TYPE" - format de sortie ; 'auto' se déduit du nom de fichier -o ou du contexte de sortie * **"--dark-hex"** "HEX" - couleur sombre (premier plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--light-hex"** "HEX" - couleur claire (arrière-plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--bar-width"** "BAR_WIDTH" - largeur de la barre la plus étroite (par défaut : 3) * **"--height"** "HEIGHT" - hauteur de l'image en pixels pystrich itf ------------ 2 parmi 5 entrelacé (1D, un nombre pair de chiffres) pystrich itf [-h] [--text TEXT] [-o OUTPUT] [-t {auto,png,svg,eps}] [--dark-hex HEX] [--light-hex HEX] [--bar-width BAR_WIDTH] [--height HEIGHT] [--bearer-width BEARER_WIDTH] options de pystrich itf ~~~~~~~~~~~~~~~~~~~~~~~ * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--text"** "TEXT" - un nombre pair de chiffres (par défaut : lecture depuis stdin) * **"-o"** "OUTPUT", **"--output"** "OUTPUT" - chemin de sortie ; '-' ou absent écrit sur stdout * **"-t"** "OUTPUT_TYPE", **"--type"** "OUTPUT_TYPE" - format de sortie ; 'auto' se déduit du nom de fichier -o ou du contexte de sortie * **"--dark-hex"** "HEX" - couleur sombre (premier plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--light-hex"** "HEX" - couleur claire (arrière-plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--bar-width"** "BAR_WIDTH" - largeur de la barre la plus étroite (par défaut : 3) * **"--height"** "HEIGHT" - hauteur de l'image en pixels * **"--bearer-width"** "BEARER_WIDTH" - épaisseur des traits d'une barre de support, en largeurs de barre étroite (par défaut : aucune) pystrich itf14 -------------- ITF-14 (1D, 13 ou 14 chiffres, avec barre de support) pystrich itf14 [-h] [--text TEXT] [-o OUTPUT] [-t {auto,png,svg,eps}] [--dark-hex HEX] [--light-hex HEX] [--bar-width BAR_WIDTH] [--height HEIGHT] [--bearer-width BEARER_WIDTH] options de pystrich itf14 ~~~~~~~~~~~~~~~~~~~~~~~~~ * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--text"** "TEXT" - 13 ou 14 chiffres (par défaut : lecture depuis stdin) * **"-o"** "OUTPUT", **"--output"** "OUTPUT" - chemin de sortie ; '-' ou absent écrit sur stdout * **"-t"** "OUTPUT_TYPE", **"--type"** "OUTPUT_TYPE" - format de sortie ; 'auto' se déduit du nom de fichier -o ou du contexte de sortie * **"--dark-hex"** "HEX" - couleur sombre (premier plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--light-hex"** "HEX" - couleur claire (arrière-plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--bar-width"** "BAR_WIDTH" - largeur de la barre la plus étroite (par défaut : 3) * **"--height"** "HEIGHT" - hauteur de l'image en pixels * **"--bearer-width"** "BEARER_WIDTH" - épaisseur des traits de la barre de support, en largeurs de barre étroite (par défaut : 4) pystrich datamatrix ------------------- Data Matrix (2D) pystrich datamatrix [-h] [--text TEXT] [-o OUTPUT] [-t {auto,png,svg,eps,ascii,terminal,dxf}] [--dark-hex HEX] [--light-hex HEX] [--cell-size CELL_SIZE] [--inverse | --no-inverse] [--mark-shape {square,circular,horizontal-runs}] [--dxf-units {in,ft,mi,mm,cm,m,unspecified}] [--quiet-zone QUIET_ZONE] [--encoding {auto,ascii,iso-8859-1,utf-8}] [--substitute-with-fnc1 CHAR] [--symbol-shape {square,rectangular,auto}] options de pystrich datamatrix ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--text"** "TEXT" - texte à encoder (par défaut : lecture depuis stdin) * **"-o"** "OUTPUT", **"--output"** "OUTPUT" - chemin de sortie ; '-' ou absent écrit sur stdout * **"-t"** "OUTPUT_TYPE", **"--type"** "OUTPUT_TYPE" - format de sortie ; 'auto' se déduit du nom de fichier -o ou du contexte de sortie * **"--dark-hex"** "HEX" - couleur sombre (premier plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--light-hex"** "HEX" - couleur claire (arrière-plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--cell-size"** "CELL_SIZE" - longueur de côté d'un module ; doit être un nombre entier pour png/svg/eps (par défaut : 5), les décimales sont prises en charge pour dxf (par défaut : 1.0) * **"--inverse"**, **"--no-inverse"** - inverser (cellules claires remplies au lieu des sombres) ; s'applique à svg/eps/dxf * **"--mark-shape"** "MARK_SHAPE" - comment les cellules marquées sont dessinées dans la sortie vectorielle * **"--dxf-units"** "DXF_UNITS" - unités DXF (par défaut : mm) ; 'unspecified' écrit $INSUNITS=0 * **"--quiet-zone"** "QUIET_ZONE" - largeur de la zone de silence en cellules (par défaut : 2) * **"--encoding"** "ENCODING" - jeu de caractères DataMatrix (par défaut : auto choisit le plus restreint qui convient) * **"--substitute-with-fnc1"** "CHAR" - remplace chaque occurrence de CHAR dans --text par un mot de code FNC1 * **"--symbol-shape"** "SYMBOL_SHAPE" - forme du Data Matrix (par défaut : square) pystrich qrcode --------------- QR Code (2D) pystrich qrcode [-h] [--text TEXT] [-o OUTPUT] [-t {auto,png,svg,eps,ascii,terminal,dxf}] [--dark-hex HEX] [--light-hex HEX] [--cell-size CELL_SIZE] [--inverse | --no-inverse] [--mark-shape {square,circular,horizontal-runs}] [--dxf-units {in,ft,mi,mm,cm,m,unspecified}] [--ecl {L,M,Q,H}] options de pystrich qrcode ~~~~~~~~~~~~~~~~~~~~~~~~~~ * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--text"** "TEXT" - texte à encoder (par défaut : lecture depuis stdin) * **"-o"** "OUTPUT", **"--output"** "OUTPUT" - chemin de sortie ; '-' ou absent écrit sur stdout * **"-t"** "OUTPUT_TYPE", **"--type"** "OUTPUT_TYPE" - format de sortie ; 'auto' se déduit du nom de fichier -o ou du contexte de sortie * **"--dark-hex"** "HEX" - couleur sombre (premier plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--light-hex"** "HEX" - couleur claire (arrière-plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--cell-size"** "CELL_SIZE" - longueur de côté d'un module ; doit être un nombre entier pour png/svg/eps (par défaut : 5), les décimales sont prises en charge pour dxf (par défaut : 1.0) * **"--inverse"**, **"--no-inverse"** - inverser (cellules claires remplies au lieu des sombres) ; s'applique à svg/eps/dxf * **"--mark-shape"** "MARK_SHAPE" - comment les cellules marquées sont dessinées dans la sortie vectorielle * **"--dxf-units"** "DXF_UNITS" - unités DXF (par défaut : mm) ; 'unspecified' écrit $INSUNITS=0 * **"--ecl"** "ECL" - niveau de correction d'erreurs (par défaut : M) pystrich pdf417 --------------- PDF417 (2D empilé) pystrich pdf417 [-h] [--text TEXT] [-o OUTPUT] [-t {auto,png,svg,eps,ascii,terminal,dxf}] [--dark-hex HEX] [--light-hex HEX] [--cell-size CELL_SIZE] [--inverse | --no-inverse] [--mark-shape {square,circular,horizontal-runs}] [--dxf-units {in,ft,mi,mm,cm,m,unspecified}] [--ecl {0,1,2,3,4,5,6,7,8}] [--columns N] [--row-height ROW_HEIGHT] [--quiet-zone QUIET_ZONE] options de pystrich pdf417 ~~~~~~~~~~~~~~~~~~~~~~~~~~ * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--text"** "TEXT" - texte à encoder (par défaut : lecture depuis stdin) * **"-o"** "OUTPUT", **"--output"** "OUTPUT" - chemin de sortie ; '-' ou absent écrit sur stdout * **"-t"** "OUTPUT_TYPE", **"--type"** "OUTPUT_TYPE" - format de sortie ; 'auto' se déduit du nom de fichier -o ou du contexte de sortie * **"--dark-hex"** "HEX" - couleur sombre (premier plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--light-hex"** "HEX" - couleur claire (arrière-plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--cell-size"** "CELL_SIZE" - longueur de côté d'un module ; doit être un nombre entier pour png/svg/eps (par défaut : 5), les décimales sont prises en charge pour dxf (par défaut : 1.0) * **"--inverse"**, **"--no-inverse"** - inverser (cellules claires remplies au lieu des sombres) ; s'applique à svg/eps/dxf * **"--mark-shape"** "MARK_SHAPE" - comment les cellules marquées sont dessinées dans la sortie vectorielle * **"--dxf-units"** "DXF_UNITS" - unités DXF (par défaut : mm) ; 'unspecified' écrit $INSUNITS=0 * **"--ecl"** "ECL" - niveau de correction d'erreurs 0-8 (par défaut : choisi selon la longueur des données) * **"--columns"** "N" - colonnes de données 1-30 (par défaut : disposition d'aire minimale) * **"--row-height"** "ROW_HEIGHT" - rangées de modules par rangée de mots de code (par défaut : 3) * **"--quiet-zone"** "QUIET_ZONE" - largeur de la zone de silence en modules (par défaut : 2) pystrich aztec -------------- Aztec Code (2D) pystrich aztec [-h] [--text TEXT] [-o OUTPUT] [-t {auto,png,svg,eps,ascii,terminal,dxf}] [--dark-hex HEX] [--light-hex HEX] [--cell-size CELL_SIZE] [--inverse | --no-inverse] [--mark-shape {square,circular,horizontal-runs}] [--dxf-units {in,ft,mi,mm,cm,m,unspecified}] [--ecc PCT] [--symbol-kind {auto,compact,full}] [--layers LAYERS] [--quiet-zone QUIET_ZONE] options de pystrich aztec ~~~~~~~~~~~~~~~~~~~~~~~~~ * **"-h"**, **"--help"** - affiche ce message d'aide et quitte * **"--text"** "TEXT" - texte à encoder (par défaut : lecture depuis stdin) * **"-o"** "OUTPUT", **"--output"** "OUTPUT" - chemin de sortie ; '-' ou absent écrit sur stdout * **"-t"** "OUTPUT_TYPE", **"--type"** "OUTPUT_TYPE" - format de sortie ; 'auto' se déduit du nom de fichier -o ou du contexte de sortie * **"--dark-hex"** "HEX" - couleur sombre (premier plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--light-hex"** "HEX" - couleur claire (arrière-plan) sous forme de 3, 6 ou 8 chiffres hexadécimaux ; png/svg/eps uniquement * **"--cell-size"** "CELL_SIZE" - longueur de côté d'un module ; doit être un nombre entier pour png/svg/eps (par défaut : 5), les décimales sont prises en charge pour dxf (par défaut : 1.0) * **"--inverse"**, **"--no-inverse"** - inverser (cellules claires remplies au lieu des sombres) ; s'applique à svg/eps/dxf * **"--mark-shape"** "MARK_SHAPE" - comment les cellules marquées sont dessinées dans la sortie vectorielle * **"--dxf-units"** "DXF_UNITS" - unités DXF (par défaut : mm) ; 'unspecified' écrit $INSUNITS=0 * **"--ecc"** "PCT" - pourcentage de correction d'erreurs 5..95 (par défaut : 23) * **"--symbol-kind"** "SYMBOL_KIND" - type de symbole (par défaut : auto choisit le plus petit qui convient) * **"--layers"** "LAYERS" - nombre de couches de données ; nécessite --symbol-kind compact ou full * **"--quiet-zone"** "QUIET_ZONE" - largeur de la zone de silence en modules (par défaut : 2) Détection automatique du format =============================== Le format de sortie est détecté automatiquement à partir du nom de fichier "-o" (".png", ".svg", ".eps", ".dxf") ; sans "-o", il vaut "terminal" par défaut pour les formats 2D lorsque stdout est un TTY. Une sortie redirigée ou passée par un tube sans "-t" explicite est rejetée, pour éviter de déverser par accident du binaire dans l'outil suivant. GS1 Data Matrix depuis le shell =============================== GS1 Data Matrix utilise l'ASCII avec des marqueurs "FNC1" séparant les identifiants d'application et leurs valeurs. "--substitute-with-fnc1" vous permet de construire cette entrée à partir d'une chaîne adaptée au shell : $ pystrich datamatrix \ --text "|0105050070007664" \ --substitute-with-fnc1 "|" \ -o gs1.png Voir Data Matrix pour la discussion complète sur l'encodage.