Script de création de vignettes d'images
Basé sur le tutoriel Comment créer une galerie d'images en vignettes sur ce site, le script Thumbnail Maker en PHP fournit un programme prêt à utiliser qui s'applique à un fichier image ou un répertoire entier, selon la commande passée.
En outre depuis la version 1.2, il peut aussi convertir le format des images à la volée.
Fonctions du script
Le script redimensionne une image ou crée une vignette, ou s'applique à toutes les images dans un répertoire donné en fonction:
- de la hauteur passée en paramètre,
- ou de la largeur,
- ou de la hauteur et la largeur voulue.
Dans le dernier cas les images sont redimensionnées en conservant les proportions initiales et éventuellement centrées et rognées pour obtenir les dimensions voulues, ce qui est indispensable pour créer une galerie de vignettes uniformes.
Commande et options
La syntaxe est:
php resizer.php [options] (fichier-image | chemin | *)
Les options concernent les dimensions de la nouvelle image et éventuellement le nouveau format.
Il faut interpréter la commande comme ceci:
Redimensionner selon les options...
- le nom d'un fichier image,
- le chemin d'une image ou d'un répertoire contenant des images,
- avec * les images dans le répertoire courant.
Options de dimensions
Dans le cas ou l'on veut simplement redimensionner l'image, on passe en option soit la nouvelle hauteur, soit la nouvelle largeur.
Exemples:
-w100
La nouvelle image aura une largeur de 100 pixels, la hauteur sera adaptée pour conserver les proportions.
-h100
La nouvelle image aura une hauteur de 100 pixels, et la largeur sera adaptée.
-w100 -h100
La vignette aura une hauteur et une largeur de 100 pixels. Les proportions seront conservées, mais l'image sera centrée et rognée aux extrémités. Le tutoriel explique en détails le mode opératoire et montre le code PHP qui réalise ce traitement.
Si aucun paramètre de dimension n'est donné, les paramètres par défaut (150 x 150) seront utilisés.
Options de conversion
Il est possible de changer le format d'image en créant des vignettes, ou d'utiliser le script comme outil de conversion de format sans changer les dimensions.
Les formats d'images supportés sont GIF, PNG, JPG:
-g convertir en gif. -p convertir en png. -j convertir en jpg.
Exemple:
php resizer.php -j monimage.png
Quand une option de conversion est donnée, et qu'aucune option de dimension n'est indiquée, les dimensions originales sont conservées, tandis que si aucun format d'image n'est indiqué les dimensions de vignette par défaut sont utilisées.
Donc dans l'exemple, l'image est convertie en JPG et ses dimensions préservées.
Licence
Le script resizer.php est sous licence GNU GPL 2.0.
Utilisez librement ce script mais conservez la notice de copyright dans le code source.
Téléchargement
Versions
- 1.4 - 30 juillet 2011.
La transparence est maintenant conservée pour les images GIF et PNG.
Les dimensions par défaut sont maintenant celles de l'image originale et non plus 150x150 (pour faciliter les conversions seules). - 1.3 - 30 mars 2009 - L'alignement à la fois en largeur et hauteur ne requiert plus de donner un format d'image.
- 1.2 - 22 mai 2008 - Options de conversion ajoutées.
- 1.1 - 9 mai 2008 - On peut donner en paramètre le nom d'un seul fichier avec un chemin.
- 1.0 - 6 mai 2007 - Première version.