Programme python

CDN31240 -  
dsy73 Messages postés 9252 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai un gros soucis avec ce programme : il ne marche en effet que pour des réductions et non des agrandissements (quadrillages affreux...)
Pouvez vous m'aider SVP ?? Je galère beaucoup !!!!
Merci d'avance ;)
def AGRE():
    Mafenetre.destroy()
    from PIL import Image
    img=Image.open(fichier)
    zoom=int(input("Entrez un pourcentage d'agrandissement ou de rétrécissement (nombre négatif pour rétrécir)"))  # Boucle fonctionnant uniquement avec des zooms négatifs avec des valeurs entières (ex: "-10", "-25", "-50", ...)
    img.show()
    largeur,longueur=img.size
    largeur_out=int(img.size[0]*((zoom+100)/100))
    longueur_out=int(img.size[1]*((zoom+100)/100))
    img_out=Image.new("RGB",(largeur_out,longueur_out))

    for x in range(largeur):
        for y in range(longueur):
            (r,v,b)=img.getpixel((x,y))
            img_out.putpixel((int(x*((zoom+100)/100)),int(y*((zoom+100)/100))),(r,v,b))
    
    mg_out.show()
    print("l'image a été retaillée de ",zoom,"%")
AGRE()


A voir également:

2 réponses

CDN31240
 
Un peu d'aide svp je suis vraiment embêté car je dois rendre le programme demain :-/
0
dsy73 Messages postés 9252 Date d'inscription   Statut Contributeur Dernière intervention   2 485
 
Salut
regarde la méthode Image.transform() du module PIL
Sinon recherche un algo avec les mot-clefs : image scale
0