Librarie GD : remplacement d'une couleur
Résolu
Kikkoman59
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
Kikkoman59 Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
Kikkoman59 Messages postés 2 Date d'inscription Statut Membre Dernière intervention -
Bonjour!
Je découvre la librairie GD, il y a beaucoup de possibilités mais je ne trouve pas celle qui me faut en particulier.
J'ai une image toute simple (un cercle remplit de noir en son centre avec du texte écrit en blanc), qui n'a pas été créée par GD, et il faudrait que je puisse changer la couleur noire en une autre couleur.
Après pas mal de recherches, j'ai trouvé un semblant de quelque chose mais ça ne fonctionne pas...
Code :
<?php
header("Content-type: image/png");
$image = imagecreatefrompng("images/mon_image.png");
$couleur1=imagecolorexact($image,0,0,0);
imagecolorset($image,$couleur1,159,248,242);
imagepng($image); //renvoie une image sous format png
imagedestroy($image); //détruit l'image, libérant ainsi de la mémoire
?>
J'arrive par exemple à la rendre transparente avec :
Code :
$noir = imagecolorallocate($image, 0, 0, 0); // definit la couleur à enlever (R, G, B) où $image est le nom de l'image.
imagecolortransparent($image, $noir);
Donc je suppose qu'une fonction simple existe mais je ne trouve vraiment pas ...
Je découvre la librairie GD, il y a beaucoup de possibilités mais je ne trouve pas celle qui me faut en particulier.
J'ai une image toute simple (un cercle remplit de noir en son centre avec du texte écrit en blanc), qui n'a pas été créée par GD, et il faudrait que je puisse changer la couleur noire en une autre couleur.
Après pas mal de recherches, j'ai trouvé un semblant de quelque chose mais ça ne fonctionne pas...
Code :
<?php
header("Content-type: image/png");
$image = imagecreatefrompng("images/mon_image.png");
$couleur1=imagecolorexact($image,0,0,0);
imagecolorset($image,$couleur1,159,248,242);
imagepng($image); //renvoie une image sous format png
imagedestroy($image); //détruit l'image, libérant ainsi de la mémoire
?>
J'arrive par exemple à la rendre transparente avec :
Code :
$noir = imagecolorallocate($image, 0, 0, 0); // definit la couleur à enlever (R, G, B) où $image est le nom de l'image.
imagecolortransparent($image, $noir);
Donc je suppose qu'une fonction simple existe mais je ne trouve vraiment pas ...
A voir également:
- Librarie GD : remplacement d'une couleur
- Gd group prélèvement - Forum Consommation & Internet
- Gd group cork c'est quoi - Forum Consommation & Internet
- Google gd media - Forum Jeux vidéo
- Gd math - Télécharger - Études & Formations
- Prélèvement frauduleux - Forum Consommation & Internet
1 réponse
Bon eh bien j'ai trouvé, pour ceux que ça intéressent :
il faut ajouter la classe GDMagic, disponible ici : https://www.phpclasses.org/package/5048-PHP-Apply-effects-on-images-using-only-GD.html
et ensuite utiliser la fonction replace_color.php et ça marche tout seul ^^
il faut ajouter la classe GDMagic, disponible ici : https://www.phpclasses.org/package/5048-PHP-Apply-effects-on-images-using-only-GD.html
et ensuite utiliser la fonction replace_color.php et ça marche tout seul ^^