wpseek.com
A WordPress-centric search engine for devs and theme authors



wp_tinycolor_hsl_to_rgb › WordPress Function

Since5.8.0
Deprecatedn/a
wp_tinycolor_hsl_to_rgb ( $hsl_color )
Access:
  • private
Parameters:
  • (array) $hsl_color HSL object.
    Required: Yes
See:
Returns:
  • (array) Rounded and converted RGB object.
Defined at:
Codex:

Convert an HSL object to an RGB object with converted and rounded values.

Direct port of TinyColor's function, lightly simplified to maintain consistency with TinyColor.


Source

function wp_tinycolor_hsl_to_rgb( $hsl_color ) {
	$h = wp_tinycolor_bound01( $hsl_color['h'], 360 );
	$s = wp_tinycolor_bound01( $hsl_color['s'], 100 );
	$l = wp_tinycolor_bound01( $hsl_color['l'], 100 );

	if ( 0 === $s ) {
		// Achromatic.
		$r = $l;
		$g = $l;
		$b = $l;
	} else {
		$q = $l < 0.5 ? $l * ( 1 + $s ) : $l + $s - $l * $s;
		$p = 2 * $l - $q;
		$r = wp_tinycolor_hue_to_rgb( $p, $q, $h + 1 / 3 );
		$g = wp_tinycolor_hue_to_rgb( $p, $q, $h );
		$b = wp_tinycolor_hue_to_rgb( $p, $q, $h - 1 / 3 );
	}

	return array(
		'r' => $r * 255,
		'g' => $g * 255,
		'b' => $b * 255,
	);
}