This will separate out the individual RGB channels and recombine them:
<?php
$im = new Imagick ("test.jpg");
$red = clone $im;
$red->separateImageChannel (imagick::CHANNEL_RED);
$green = clone $im;
$green->separateImageChannel (imagick::CHANNEL_GREEN);
$red->addImage ($green);
$green->destroy ();
$blue = clone $im;
$blue->separateImageChannel (imagick::CHANNEL_BLUE);
$red->addImage ($blue);
$blue->destroy();
$red->setFirstIterator ();
$im_new = $red->combineImages (imagick::CHANNEL_ALL);
$im_new->writeImage ("test_rebuilt.png");
echo "<img src=\"test_rebuilt.png\">\r\n";
?>
Imagick::combineImages
(PECL imagick 2.0.0)
Imagick::combineImages — Combina una o más imágenes en una sóla imagen
Descripción
Combina una o más imágenes en una sóla imagen. El valor de la escala de grises de los píxeles de cada imagen en la secuencia se asigna para especificar los canales de la imagen combinada. El orden típico sería imagen 1 => Red, 2 => Green, 3 => Blue, etc.
Parámetros
-
channelType -
Proporcione cualquier constante de canal que sea válida para su modo de canal. Para aplicar más de un canal, combine las constantes channeltype usando operadores a nivel de bits. Consulte esta lista de constantes de canal.
Valores devueltos
Devuelve TRUE en caso de éxito.
Errores/Excepciones
Lanza ImagickException en caso de error.
Lee ¶
10 months ago
