Permet de creer des codes scouts
Project description
codescout
Librairie python permettant d'encoder des messages à l'aide de codes utilisés par les scouts Copyright 2024, Vincent Fortin (vincent.fortin@gmail.com)
Cette librairie permet de créer une image au format png contenant un message codé avec differents codes scouts:
Code soleil: Dans ce code, chaque lettre du message est représentée par un soleil et le nombre de rayon de ce soleil correspond à l'ordre de la lettre dans l'alphabet (de 1 à 26). Pour faciliter le décodage, les rayons correspondant à des voyelles sont plus longs
Code musical: Dans ce code, chaque lettre du message est représentée par une note de musique. Le A devient une blanche sur le DO central, et on monte d'une note jusqu'au M qui est un LA. Ensuite on reprend au dos central pour la lettre M mais avec des noires. On monte encore une fois jusqu'au LA aigu pour Z.
La fonction principale de cette librairie se nomme codescout. Elle prend deux parametres obligatoires et plusieurs parametres optionnels:
- message [requis]: message a encoder
- code [requis]: nom du code a utiliser pour encoder
- taille [defaut=8]: taille des elements du message en pixels
- delimiteur [defaut=':'] caractere a utiliser dans le message pour indiquer a la fonction de decouper le message sur plusieurs lignes a l'aide de ce delimiteur
- interligne [defaut=1]: permet d'ajouter de l'espace entre les lignes du message afin par exemple de laisser de la place pour decoder
- bordure [defaut=0]: permet d'ajouter une bordure au message afin par exemple de faciliter son decoupage (le parametre correspond a la taille en pixels de la bordure
- legende [defaut='']: permet d'ajouter une legende en bas a gauche (par exemple une courte instruction, un numero...)
- decoder [defaut=False] indique si oui ou nom on doit afficher le message decode sous le code
- fonte [default='FreeMono.ttf'] nom de la fonte a utiliser pour la legende et le texte decode
Cette fonction retourne une image, qui peut être affichée ou sauvegardée en utilisant les méthodes image.draw() et image.save().
En mode ligne de commande, un paramètre optionnel supplémentaire permet de spécifier le nom du fichier dans lequel sauvegarder l'image (au format PNG):
- sortie [optionnel]: nom du fichier contenant l'image
Si ce paramètre n'est pas fourni, un nom de fichier est construit par le script à partir du message.
Attention:
- ne pas utiliser d'accents dans le texte a encoder
- si le fichier de fonte n'est pas trouve, la fonte par defaut de la librairie PIL sera utilisee, et elle est assez petite
- en mode ligne de commande, comme le script choisit le nom du fichier de sortie, il peut écraser un fichier existant. Le nom du fichier de sortie comprend tous les caractères entre a et z du message et a l'extension PNG. Si le script n'a pas le droit d'écrire dans le répertoire courant, une erreur se produira et l'image ne sera pas sauvegardée.
Exemple d'utilisation:
from codescout import codescout
image = codescout(message="La bonne humeur:est aussi contagieuse:que la rougeole",
"soleil",taille=15,bordure=2,legende="2024-05-12",decoder=True)
image.save("code.png")
Equivalent en version ligne de commande:
./codescout.py -m "La bonne humeur:est aussi contagieuse:que la rougeole"\
-c soleil -t 15 -b 2 -l "2024-05-12" --decoder
Tapez ./codescout.py -h
pour obtenir de l'aide sur l'utilisation en mode
ligne de commande.
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
File details
Details for the file codescout-0.1.18.tar.gz
.
File metadata
- Download URL: codescout-0.1.18.tar.gz
- Upload date:
- Size: 17.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 374fa12298eb581a7540c89afa708e215e065e57185092adcb44c323b56e31aa |
|
MD5 | 01e10292478678b358dd884afb4701a7 |
|
BLAKE2b-256 | f5b39999b847f1154b751fc85094e37e31b81aa34fc764d7367eec05550f5606 |