wp_tinycolor_hsl_to_rgb()WP 5.8.0

Deprecated from version 6.3.0. It is no longer supported and can be removed in future releases. It is recommended to replace this function with the same one.

Converts 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.

Internal function — this function is designed to be used by the kernel itself. It is not recommended to use this function in your code.

No Hooks.

Return

Array. Rounded and converted RGB object.

Usage

wp_tinycolor_hsl_to_rgb( $hsl_color );
$hsl_color(array) (required)
HSL object.

Changelog

Since 5.8.0 Introduced.
Deprecated since 6.3.0

wp_tinycolor_hsl_to_rgb() code WP 6.5.2

function wp_tinycolor_hsl_to_rgb( $hsl_color ) {
	_deprecated_function( __FUNCTION__, '6.3.0' );

	$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,
	);
}