Traitement des images en PHP
Par Mathieu Delestre le lundi 27 juillet 2009, 17:51 - Scripts - Lien permanent
J'avais réalisé il y à déjà un bon moment une classe PHP de traitement des images.
Cependant si le résultat est fonctionnel, ce gros paquet fourre tout n'est ni des plus léger, ni des plus simple à mettre en œuvre ou à faire évoluer.
Récemment j'ai reçu un mail m'indiquant que j'avais du oublier quelque petit truc dans la gestion des transparences des images traités. Suivait quelques autres mails avec les solutions à apporter pour améliorer la situation.
Pour ma part j'avais fait évoluer la classe au fil de mes projets sans pour autant reporter les changements sur la version présenté sur le blog du coup intégrer directement la solution n'était pas possible et de toute façon ce gros morceau avait besoin d'une bonne refonte.
C'est chose faite avec cette première mouture (tout les filtres précédemment existant n'étant pas encore implémenté) d'une nouvelle classe Image
Je publierais de temps à autre un billet lors des mises à jour importantes mais sinon le code sera mis à jour régulièrement sur le dépot Mercurial
Commentaires
Salut,
Moi j'aime beaucoup cette classe, d'ailleurs je l'utilise sur 2 de mes sites. Cependant il serait bien de pouvoir ajouter par exemple un tatouage sur les images... c'est prévu pour une prochaine version?
Bon boulot!
A vrai dire c'est déjà possible avec la méthode Filter en mode stamp (tampon)
j'ai enrichie l'exemple 13 pour bien montrer le principe
http://ldbglobe.fried-rice.net/publ...
Salut!
Effectivement ca marche très bien! Merci!
Par contre comment faire pour par exemple centrer toujours ce watermark pour une image redimensionnée avec son ratio? pour un crop pas de soucis car on a toujours la mêmes largeur et hauteur. Mais pas dans ce cas ci...
une idée?
merci, jo
Effectivement je n'ai pas implémenté de méthode pour récupérer directement les dimension ^^
tu peux par contre faire :
1. le redimensionnement
2. extraction des dimensions via $monImage->data et les méthodes native de PHP (ex $w = imagesx($monimage->data) )
3. appliquer ton tampon en en déterminant le centre
je mettrais surement à jour la librairie pour gérer une application de tampon centré automatiquement et j'en profiterais également pour introduire une méthode de lecture des dimension pour éviter le recourt à des méthodes PHP native
Ok merci! je vais faire comme ca alors.
Si tu implémentes le fait de centrer l'image, pense aussi a centrer en fonction de la taille de l'image a centrer ;-)
Encore merci pour cette classe.
Et voila la dernière version du dépot propose le centrage automatique pour le STAMP et j'ai également corrigé un problème avec le mode normal qui était complètement à l'ouest...