PHP | Imagick getImageChannelDepth() Function

The Imagick::getImageChannelDepth() function is an inbuilt function in PHP which is used to get the depth for channel image.

Syntax:

int Imagick::getImageChannelDepth( $channel )

Parameters: This function accept single parameter $channel which specifies the channel constant that is valid for channel mode. The default value of channel is Imagick::CHANNEL_DEFAULT.

Return Value: This function returns True on success.

Below programs illustrate the Imagick::getImageChannelDepth() function in PHP:

Program 1:
Original Image:
https://cdncontribute.geeksforgeeks.org/wp-content/uploads/geeks-21.png

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
  
// Create new imagick object
$im = new Imagick(
  
// Using getImageChannelDepth function
// with different channel
echo $im->getImageChannelDepth(imagick::CHANNEL_RED) . "</br>";
echo $im->getImageChannelDepth(imagick::CHANNEL_GRAY) . "</br>";
echo $im->getImageChannelDepth(imagick::CHANNEL_CYAN) . "</br>";
echo $im->getImageChannelDepth(imagick::CHANNEL_GREEN) . "</br>";
echo $im->getImageChannelDepth(imagick::CHANNEL_BLUE) . "</br>";
?>

chevron_right


Output:

8
8
8
8
8

Program 2:
Original Image:
https://cdncontribute.geeksforgeeks.org/wp-content/uploads/Screenshot-from-2018-10-16-23-23-54.png

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php 
  
$string = "Computer Science portal for Geeks!"
  
// Creating new image of above String 
// and add color
$im = new Imagick(); 
$draw = new ImagickDraw(); 
  
// Fill the color in image 
$draw->setFillColor(new ImagickPixel('green')); 
  
// Set the text font size 
$draw->setFontSize(50); 
  
$metrix = $im->queryFontMetrics($draw, $string); 
$draw->annotation(0, 40, $string); 
$im->newImage($metrix['textWidth'], $metrix['textHeight'], 
        new ImagickPixel('white')); 
// Draw the image         
$im->drawImage($draw); 
$im->setImageFormat('jpeg'); 
  
// Using getImageChannelDepth function
// with different channel
echo $im->getImageChannelDepth(imagick::CHANNEL_RED) . "</br>";
echo $im->getImageChannelDepth(imagick::CHANNEL_GRAY) . "</br>";
echo $im->getImageChannelDepth(imagick::CHANNEL_CYAN) . "</br>";
echo $im->getImageChannelDepth(imagick::CHANNEL_GREEN) . "</br>";
echo $im->getImageChannelDepth(imagick::CHANNEL_BLUE) . "</br>";
?>

chevron_right


Output:

8
8
8
16
8

Reference: http://php.net/manual/en/imagick.getimagechanneldepth.php



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.