!!! Important
2009/07/27 - Portage de la classe ImageFilter vers un ensemble de class plus souple à manipuler
!!! Important
15/03/2005 V1.1a
Nouvelle petite correction trouvé par TeddyBer. pas grand chose, mais ce qu’il faut pour éviter des notices superflue.
14/03/2005 V1.1
Seconde étape de nettoyage avec la remise à jours des commentaires dans le code source de la classe, et au passage, la correction de quelques incohérences de traitements (ne portant pas vraiment à conséquance sauf dans le cas de certaine opérations pas vraiment courantes)
Bref, je vous encourage à mettre à jours vos librairie, mais si tout fonctionne et que les nouvelles fonctionnalités ne vous interressent pas ce n’est pas obligatoire.
13/03/2005 V1.0
Un peu de ménage s’imposait ^^ du coup après une reprise des commentaires disséminé à droite et à gauche relative à cette classe, voila un post tout beau tout neuf ^^.
NB : la classe est compatible GD 1 et 2 (un simple paramètre à changer dans le code source)
06/10/2004
Comme ces derniers temps je fait et refait régulièrement le même genre de tranche de code pour générer des miniatures d’image, ou quelques traitements divers (filtre N/B ou autres) j’ai réuni tout les morceau de code dont je disposais dans une classe unique et j’ai mis au propre l’ensemble.
Au final j’obtient une classe ImageFilter dont la source (et une démo) sont dispo par ici
En éspérant que ça servira à d’autre ^^
Voici la liste des fonctions disponnibles :
setColorsToWork($nb)clear()createImage($w,$h)loadImage($path)getImageSize($img=NULL)output($type='PNG',$JPG_Q=90)
function crop($X,$Y,$WIDTH,$HEIGHT)resize($WIDTH,$HEIGHT,$MODE='force',$EXPAND=false)
fill($x,$y,$r,$g,$b)lightContrast($L=0,$C=0)//$C et L (0-100) Thks to TeddyBernegative()colorize($whiteness, $decalR, $decalG, $decalB)grayscale($taux=1)sepia()
mosaic($wSize, $hSize=0 )stamp($img, $x, $y, $mode='normal' )palettedToTrueColor()
applyMatrix3x3($matrix)// pas bon pour le CPUBlur($k=1)Edge($k=1)Sharpen($k=1)
flip($flip='h')// h,v Thks to ZeuBeuBeurotation($angle=90)// 90,180,270 Thks to ZeuBeuBeu
batchFilter(Array $commands)démo ici
La métode Stamp supporte 6 mode de fusion
- normal = Pix1 <= Pix2
- multiply = Pix1 <= Pix1*Pix2/255 (si Pix2 = 255 = Blanc pas de changement)
- add = Pix1 <= Pix1+Pix2
- difference = Pix1 <= Abs(Pix1-Pix2)
- lighten = Pix1 <= max(Pix1,Pix2)
- darken = Pix1 <= min(Pix1,Pix2)
Derniers commentaires