Maison >développement back-end >Tutoriel Python >Le lot Python génère des images de n'importe quelle taille
Obtenir l'effet
Générer 1000 images de 1*1 à 1000*1000 pixels dans le répertoire /img du répertoire de travail actuel via les images source.
L'effet est le suivant :
Structure du répertoire
Exemple d'implémentation
# -*- coding: utf-8 -*- import threading from PIL import Image image_size = range(1, 1001) def start(): for size in image_size: t = threading.Thread(target=create_image, args=(size,)) t.start() def create_image(size): pri_image = Image.open("origin.png") pri_image.resize((size, size), Image.ANTIALIAS).save("img/png_%d.png" % size) if __name__ == "__main__": start()
Remarque : ce projet doit faire référence à la bibliothèque PIL
.
Ici, on utilise la fonction resize
.
Comme la plupart des bibliothèques de scripts, la fonction resize
prend également en charge les appels chaînés. Spécifiez d'abord la taille et la qualité via resize((size, size), Image.ANTIALIAS)
, où pour le paramètre deux :
|
save("img/png_%d.png" % size) Signification |
||||||||||
Image.NEAREST | Faible qualité | ||||||||||
Image.BILINEAR | Bilinéaire | ||||||||||
Image.BICUBIC | Interpolation spline cubique | ||||||||||
Image.ANTIALIAS | Haute qualité |
Enfin, appelez la méthode
pour écrire à l'emplacement spécifié dans le format spécifié.De plus, étant donné qu'il s'agit d'un grand nombre d'opérations linéairement intensives, la concurrence multithread est utilisée.
Conclusion Ce qui précède est tout le contenu de l'utilisation de Python pour générer par lots des images de n'importe quelle taille. J'espère que cela sera utile à tout le monde. pour apprendre et utiliser Python.
Pour plus d'articles liés à la génération par lots Python d'images de toute taille, veuillez faire attention au site Web PHP chinois !