Open In App

PHP | Gmagick separateimagechannel() Function

Last Updated : 14 Jan, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

The Gmagick::separateimagechannel() function is an inbuilt function in PHP which is used to separate a channel from the image and returns a grayscale image. A channel is a particular color component of each pixel in the image.

Syntax:

Gmagick Gmagick::separateimagechannel( int $channel )

Parameters: This function accepts a single parameter $channel which holds the integer value corresponding to one of the CHANNEL constants.

Return Value: This function returns Gmagick object on success.

Exceptions: This function throws GmagickException on error.

Below given programs illustrate the Gmagick::separateimagechannel() function in PHP:

Used Image:

Program 1 (Separating the RED channel):




<?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;
?>


Output:

Program 2 (Separating the Green channel):




<?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;
?>


Output:

Program 3 (For a drawing):




<?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();
?>


Output:

Reference: https://www.php.net/manual/en/gmagick.separateimagechannel.php



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads