Colorare e scambiando i colori con PHP GD Image Library?
-
23-08-2019 - |
Domanda
Ciao io sono nel processo di cercare di colorare e colori di swap su un'immagine utilizzando libreria di immagini GD con PHP.
Se si utilizza un'immagine originale si trova qui: http://korlon.com/youknowbetter/test.jpg
e che desiderano ottenere ad un punto in cui è volto arancione con abiti neri e capelli proprio come si vede qui: http: //youknowdifferent.org/
Finora ho usato il seguente codice:
<?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);
?>
Per ottenerlo vicino ma sto ancora manca la capacità di trasformare tutti i toni del bianco alle tonalità nere. http://korlon.com/youknowbetter/filter.php
Ho provato sostituendo bianco per il nero come indicato in questa domanda qui: Posso scambiare i colori in un'immagine utilizzando libreria GD in PHP?
Tuttavia, che non sembra funzionare. In realtà non scambiare i colori. È che perché sto usando un jpg e non una gif? C'è qualcosa che devo fare con la tavolozza dei colori?
Grazie, tutto l'aiuto sarebbe molto apprezzato!
Stoob
Soluzione
Usa Blue (# 0276DB) al posto di arancio, e poi invertire l'immagine (utilizzando IMAGE_FILTER_NEGATE
) per ottenere arancione e nero.
Quindi, il codice sarà:
<?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);
?>