import os
from PIL import Image

def mirror_images(input_folder, output_folder):
    """
    Recorre todas las imágenes en `input_folder`, las voltea horizontalmente,
    y guarda las versiones espejadas en `output_folder` con el mismo nombre.
    """

    # Crear la carpeta de salida si no existe
    os.makedirs(output_folder, exist_ok=True)

    # Extensiones de imagen a procesar
    valid_extensions = {".png", ".jpg", ".jpeg", ".bmp", ".gif", ".tiff"}

    for filename in os.listdir(input_folder):
        name, ext = os.path.splitext(filename)
        if ext.lower() in valid_extensions:
            input_path = os.path.join(input_folder, filename)
            output_path = os.path.join(output_folder, filename)

            try:
                with Image.open(input_path) as img:
                    mirrored = img.transpose(Image.FLIP_LEFT_RIGHT)
                    mirrored.save(output_path)
                    print(f"Procesada: {filename}")
            except Exception as e:
                print(f"Error al procesar {filename}: {e}")

if __name__ == "__main__":
    # Rutas de ejemplo (ajústalas a tus carpetas)
    carpeta_entrada = r"D:\Github\Test-Cuantico\Graphics\Pokemon\Future additions\CON_NOMBRES\Front Shiny Test"
    carpeta_salida  = r"D:\Github\Test-Cuantico\Graphics\Pokemon\Future additions\CON_NOMBRES\Shiny Back Test"

    mirror_images(carpeta_entrada, carpeta_salida)
    print("Proceso completado.")
