Deedee Posté 10 Juillet 2005 Posté 10 Juillet 2005 (modifié) Salut a tous, Voila j'aimerais convertir une image en noir et blanc via la librairie GD. Je comptai faire comme ceci : Passer en revue tous les pixels, les comparer avec un seuil, et lui donner une couleur entre le blanc et le noir. A l'arrivé on aura fait un tramage complet de l'image et elle sera en noire et blanc Seulement, je ne sais comment déterminer le seuil, ainsi que la future couleur attribué au pixel ? Si quelqu'un pouvait m'en dire plus ? Merci d'avance Deedee Modifié 10 Juillet 2005 par Deedee
Sarc Posté 10 Juillet 2005 Posté 10 Juillet 2005 Bonjour ! J'ai trouvé la fonction imagecopymergegray qui fait peut-être ce que tu demandes (du moins j'ai pas vraiment compris l'explication du manuel, mais elle a l'air de créer une image en niveaux de gris...) En tout cas, ce que tu veux faire, ce sera violent pour la mémoire du serveur, j'espère que tu n'auras pas beaucoup d'images à faire comme ça ! Essaye la fonction... Sinon je ne sais pas !
Boo2M0rs0 Posté 10 Juillet 2005 Posté 10 Juillet 2005 Bonjour, la fonction donnée par sarc fusionne 2 images qui sont déjà en noir et blanc, peut être qu'en se servant de cette fonction en copiant l'image entière, la librairie va peut être convertir l'image en noir et blanc. A tester... Sinon, ben oui il va te falloir passer en revue tout les pixels avec une boucle et la fonction imagecolorat puis de remplacer avec la fonction imagecolorset.
Deedee Posté 10 Juillet 2005 Auteur Posté 10 Juillet 2005 Merci a vous 2 Pour la fonction de Sarc j'avais déja essayé sans résultat. Pour Boo2 c'est ce que je comptais faire mais je ne sais pas comment determiner la palette ? imagecolorset ( resource image, int index, int red, int green, int blue ) Merci d'avance, Deedee
Boo2M0rs0 Posté 10 Juillet 2005 Posté 10 Juillet 2005 Heu finalement je me suis peut être trompé de fonction à utiliser en m'essayant à écrire un code, j'ai trouvé ce commentaire: http://fr.php.net/manual/fr/function.imagecolorset.php#41841
Deedee Posté 10 Juillet 2005 Auteur Posté 10 Juillet 2005 Merci Boo2M0rs0 mais apparement elle ne marche pas :| Ou je susi un boulet Deedee
Tizel Posté 10 Juillet 2005 Posté 10 Juillet 2005 Il y en a une autre ici : http://www.nexen.net/scripts/details.php?scripts=665 Tizel PS: c'est plutôt en "nuance de gris" que tu souhaite sans doute convertir ton image, car en noir et blanc, le rendu sera plus que moyen.
Deedee Posté 10 Juillet 2005 Auteur Posté 10 Juillet 2005 Egalement épuré Nexen Tizel masi ca ne fonctionne pas non plus lol Ou alors je suis un vrai manchot
Sarc Posté 10 Juillet 2005 Posté 10 Juillet 2005 Dis nous quand même tes messages d'erreur, enfin le résultat des scripts, sinon on peut pas vraiment savoir ce qui va pas... Ta bibliothèque GD est bien activée avec toutes les fonctions nécessaires ? Bizarre que plusieurs scripts ne marchent pas quand même...
Boo2M0rs0 Posté 10 Juillet 2005 Posté 10 Juillet 2005 Hmm j'ai testé que ma solution et elle marchait Oo: Peut être un truc à préciser, ces fonctions ne demandent pas en paramètre le nom du fichier mais la ressource d'une image gd: $image = imagecreatefromjpeg("monimage.jpg"); ConvertGreyscale($image); imagejpeg($image); //affiche l'image imagejpeg($image, 'monimage.gray.jpg'); // ou la sauvegarde
Deedee Posté 10 Juillet 2005 Auteur Posté 10 Juillet 2005 (modifié) Hé bien pour la fonction de Nexen et le reste ca ne fait rien donc pas d'erreur masi pas de changement. Apres quelques tests en faite il s'avere que cela fonctionne avec des GIF mais pas des JPEG Modifié 10 Juillet 2005 par Deedee
Country Posté 10 Juillet 2005 Posté 10 Juillet 2005 Pour la fonction de Nexen, en fait il te faut d'abord convertir ton image en image à palette avec la fonction imagetruecolortopalette() $image = imagecreatefromjpeg("tonimage.jpg");imagetruecolortopalette($image, false, 256);ConvertGreyscale($image);header('Content-Type:image/jpeg');imagejpeg($image); //affiche l'image Et là ça marche parfaitement
Deedee Posté 10 Juillet 2005 Auteur Posté 10 Juillet 2005 Nickel Merci beaucoup tout le monde !! Maintenant remerciement personnel et par ordre d'apparition : Merci à Sarc, Boo2M0rs0, Tizel, et Country Ca gere !
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant