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.