ImagickPixel::setHSL()
(PECL imagick 2.0.0)
Sets the normalized HSL color
说明
ImagickPixel::setHSL(float $hue,float $saturation,float $luminosity): bool
Sets the color described by the ImagickPixel object using normalized values for hue, saturation and luminosity.
参数
- $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.
返回值
成功时返回TRUE
。
范例
Example #1 Use ImagickPixel::setHSL() to modify a color
<?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); ?>
以上例程会输出:
Array ( [r] => 26 [g] => 230 [b] => 230 [a] => 255 )
注释
Note:Available with ImageMagick library version 6.2.9 and higher.