diff --git a/config.json b/config.json index b79cb4b..6615fdb 100644 --- a/config.json +++ b/config.json @@ -1,5 +1,5 @@ { - "filigrame": "Agence la foret", - "zipfile": "I:\\Drive\\Documents\\Logement Maelis", - "source_directory": "H:\\Utilisateurs\\Alex\\Maelis\\Maelis - Logement 2024" + "filigrame": "Thierry Charpe (Juillet 2024)", + "zipfileDirectory": "I:\\Drive\\Documents\\Logement Colin", + "source_directory": "H:\\Utilisateurs\\Alex\\Dossier - Logement 2024" } \ No newline at end of file diff --git a/main.py b/main.py index c652941..0f2963b 100644 --- a/main.py +++ b/main.py @@ -20,6 +20,7 @@ import os, json, subprocess, zipfile, sys from PIL import Image, ImageDraw, ImageFont import piexif from pdf2image import convert_from_path +import argparse def generate_image_with_text(text, font_size=40, line_spacing=50, transparency=0.40): text = "Document exclusivement destiné à " + text @@ -180,37 +181,48 @@ def zip_directory(directory, zip_file): if __name__ == '__main__': # Creation du répertoire sources pour mettre les documents create_original_files_directory() - + + # Configure le parseur d'arguments + parser = argparse.ArgumentParser(description='read arguments') + parser.add_argument('--filigramme', type=str, help='Valeur du filigramm comme "agence (juillet 2024)"') + + # Analyse les arguments + args = parser.parse_args() + # Lecture de la configuration config = load_config() - text = config["filigrame"] + + # Utilise la valeur du filigramme fournie ou celle par défaut de la configuration + filigramme = args.filigramme if args.filigramme else config.get('filigrame', 'Protection par filigrame') + source_directory = config["source_directory"] - destination_directory = os.path.join(source_directory, text.replace(" ", "_")) + destination_directory = os.path.join(source_directory, filigramme.replace(" ", "_")) temp_directory = os.path.join(source_directory, "temp") # Extrait les pages des pdf try: print("Extrait les pages des pdf") - process_pdf_files(source_directory, text) + process_pdf_files(source_directory, filigramme) # Rajoute le tag dans les images des pages du pdf print("Rajoute le tag dans les images des pages du pdf") - merge_image_with_text(temp_directory, destination_directory, text) + merge_image_with_text(temp_directory, destination_directory, filigramme) except: print(f"Aucun fichier PDF") # Rajoute le tag sur les images du répertoire courant try: print("Rajoute le tag sur les images du répertoire courant") - merge_image_with_text(source_directory, destination_directory, text) + merge_image_with_text(source_directory, destination_directory, filigramme) - # Ouverture du répertoire contenant toutes les images tagées - open_in_file_explorer(destination_directory) # Compression du répertoire - if( is_key_defined_in_json("config.json", "zipfile")): - fichierZip = os.path.join(config["zipfile"], text.replace(" ", "_") + ".zip") + if( is_key_defined_in_json("config.json", "zipfileDirectory")): + fichierZip = os.path.join(config["zipfileDirectory"], filigramme.replace(" ", "_") + ".zip") print("Compression du répertoire et sauvegarde dans ", fichierZip) zip_directory(destination_directory, fichierZip) + + # Ouverture du répertoire contenant toutes les images tagées + open_in_file_explorer(config["zipfileDirectory"]) except: print(f"Aucune image à taguer") \ No newline at end of file