La función Gmagick::separateimagechannel() es una función incorporada en PHP que se usa para separar un canal de la imagen y devuelve una imagen en escala de grises. Un canal es un componente de color particular de cada píxel de la imagen.
Sintaxis:
Gmagick Gmagick::separateimagechannel( int $channel )
Parámetros: Esta función acepta un solo parámetro $channel que contiene el valor entero correspondiente a una de las constantes CHANNEL.
Valor de retorno: esta función devuelve el objeto Gmagick en caso de éxito.
Excepciones: esta función lanza GmagickException en caso de error.
Los siguientes programas ilustran la función Gmagick::separateimagechannel() en PHP:
Imagen usada:
Programa 1 (Separando el canal ROJO):
<?php // Create a new Gmagick object $gmagick = new Gmagick('geeksforgeeks.png'); // Separate the Gmagick::CHANNEL_RED $gmagick->separateimagechannel(Gmagick::CHANNEL_RED); // Display the image header("Content-Type: image/png"); echo $gmagick; ?>
Producción:
Programa 2 (Separando el canal Verde):
<?php // Create a new Gmagick object $gmagick = new Gmagick('geeksforgeeks.png'); // Separate the Gmagick::CHANNEL_GREEN $gmagick->separateimagechannel(Gmagick::CHANNEL_GREEN); // Display the image header("Content-Type: image/png"); echo $gmagick; ?>
Producción:
Programa 3 (Para un dibujo):
<?php // Create a new Gmagick object $gmagick = new Gmagick('geeksforgeeks.png'); // Create a GmagickDraw object $draw = new GmagickDraw(); // Set the color $draw->setFillColor('white'); // Function to draw rectangle $draw->rectangle(0, 0, 800, 400); // Set the fill color $draw->setFillColor('yellow'); // Set the font size $draw->setfontsize(50); // Annotate a text $draw->annotate(30, 100, 'GeeksforGeeks'); // Use of drawimage function $gmagick->drawImage($draw); // Separate the Gmagick::CHANNEL_BLUE $gmagick->separateimagechannel(Gmagick::CHANNEL_BLUE); // Display the output image header("Content-Type: image/png"); echo $gmagick->getImageBlob(); ?>
Producción:
Referencia: https://www.php.net/manual/en/gmagick.separateimagechannel.php