(PECL imagick 2.0.0)
Sets the normalized HSL color
bool ImagickPixel::setHSL ( float $hue, float $saturation, float $luminosity )
Sets the color described by the ImagickPixel object using normalized values for hue, saturation and luminosity.
Parameters:
hue
The normalized value for hue, described as a fractional arc (between 0 and 1) of the hue circle, where the zero value is red.
saturation
The normalized value for saturation, with 1 as full saturation.
luminosity
The normalized value for luminosity, on a scale from black at 0 to white at 1, with the full HS value at 0.5 luminosity.
Returns:
Returns TRUE
on success.
Notes:
Available with ImageMagick library version 6.2.9 and higher.
Examples:
Use ImagickPixel::setHSL() to modify a color
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <?php //Create an almost pure red color $color = new ImagickPixel( 'rgb(90%, 10%, 10%)' ); //Get it's HSL values $colorInfo = $color ->getHSL(); //Rotate the hue by 180 degrees $newHue = $colorInfo [ 'hue' ] + 0.5; if ( $newHue > 1) { $newHue = $newHue - 1; } //Set the ImagickPixel to the new color $colorInfo = $color ->setHSL( $newHue , $colorInfo [ 'saturation' ], $colorInfo [ 'luminosity' ]); //Check that the new color is blue/green $colorInfo = $color ->getcolor(); print_r( $colorInfo ); ?> |
The above example will output:
Array ( [r] => 26 [g] => 230 [b] => 230 [a] => 255 )
Please login to continue.