Question

Bonjour, je suis en train d'essayer de coloriser et les couleurs d'échange sur une image en utilisant la bibliothèque d'image GD avec PHP.

J'utilise une image originale située ici: http://korlon.com/youknowbetter/test.jpg

et que vous souhaitez obtenir à un point où il est le visage orange avec des vêtements noirs et les cheveux un peu comme vous voyez ici: http: //youknowdifferent.org/

Jusqu'à présent, je l'ai utilisé le code suivant:

<?php
header('Content-type: image/jpeg');
$im = imagecreatefromjpeg('test.jpg');



imagefilter($im, IMG_FILTER_GRAYSCALE);
imagefilter($im, IMG_FILTER_CONTRAST, 255);
imagefilter($im, IMG_FILTER_NEGATE);
imagefilter($im, IMG_FILTER_COLORIZE, 252, 137, 36);


imagejpeg($im);
?>

Pour obtenir près, mais je manque encore la capacité de transformer toutes les nuances de blanc aux tons noirs. http://korlon.com/youknowbetter/filter.php

Je l'ai essayé échangeant blanc pour le noir comme indiqué dans cette question ici: Puis-je changer de couleur dans l'image en utilisant la bibliothèque GD PHP

Cependant, cela ne semble pas fonctionner. Il ne fait pas échanger les couleurs. Est-ce parce que je me sers d'un jpg et non un gif? Y at-il quelque chose que je dois faire avec la palette de couleurs?

Merci, toute aide serait grandement appréciée!

Stoob

Était-ce utile?

La solution

utiliser le bleu (# 0276DB) au lieu d'orange, puis inverse l'image (en utilisant IMAGE_FILTER_NEGATE) pour obtenir orange et noir.

Alors, votre code sera:

<?php
header('Content-type: image/jpeg');
$im = imagecreatefromjpeg('test.jpg');



imagefilter($im, IMG_FILTER_GRAYSCALE);
imagefilter($im, IMG_FILTER_CONTRAST, 255);
imagefilter($im, IMG_FILTER_NEGATE);
imagefilter($im, IMG_FILTER_COLORIZE, 2, 118, 219);
imagefilter($im, IMG_FILTER_NEGATE);

imagejpeg($im);
?>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top