Skip to content
Related Articles

Related Articles

Improve Article

PHP | ImagickPixel setColorValue() function

  • Last Updated : 02 Jan, 2020

The ImagickPixel::setColorValue() function is an inbuilt function in PHP which is used to set the normalized value of the provided color channel for a given ImagickPixel’s color. The normalized value is a floating-point number between 0 and 1.

Syntax:

bool ImagickPixel::setColorValue( int $color, float $value )

Parameters:This function accepts two parameters as mentioned above and described below:

  • $color: It specifies the COLOR constants.
    List of all COLOR constants are given below:
    • imagick::COLOR_BLACK (11)
    • imagick::COLOR_BLUE (12)
    • imagick::COLOR_CYAN (13)
    • imagick::COLOR_GREEN (14)
    • imagick::COLOR_RED (15)
    • imagick::COLOR_YELLOW (16)
    • imagick::COLOR_MAGENTA (17)
    • imagick::COLOR_OPACITY (18)
    • imagick::COLOR_ALPHA (19)
    • imagick::COLOR_FUZZ (20)
  • $value: It specifies the value to be set.

Return Value: This function returns TRUE on success.



Exceptions: This function throws ImagickException on error.

Below given programs illustrate the ImagickPixel::setColorValue() function in PHP:

Program 1:




<?php
// Create a new imagickPixel object
$imagickPixel = new ImagickPixel();
  
// Set the color value
$imagickPixel->setColorValue(imagick::COLOR_RED, 0.8);
  
// Get the Color value with imagick::COLOR_RED
$colorValue = $imagickPixel->getColorValue(imagick::COLOR_RED);
echo $colorValue;
?>

Output:

0.8

Program 2:




<?php
// Create a new imagick object
$imagick = new Imagick(
  
// Get the pixel iterator to iterate through each pixel
$imageIterator = $imagick->getPixelIterator();
  
// Loop through pixel rows
foreach ($imageIterator as $row => $pixels) {
    // Loop through the pixels in the row
    if ($row % 5) {
        foreach ($pixels as $column => $pixel) {
            if ($column % 1000) {
                // Set the color
                $pixel->setColor("green");
  
                // Set the color value of Imagick::COLOR_ALPHA (opacity)
                $pixel->setColorValue(Imagick::COLOR_ALPHA, 0);
            }
        }
    }
  
    // Sync the iterator after each iteration
    $imageIterator->syncIterator();
}
  
header("Content-Type: image/jpg");
echo $imagick;
?>

Output:

Reference: https://www.php.net/manual/en/imagickpixel.setcolorvalue.php




My Personal Notes arrow_drop_up
Recommended Articles
Page :