astra_get_foreground_color( string $hex )
Foreground Color
Description
Parameters
- $hex
-
(string) (Required) Color code in HEX format.
Return
(string) Return foreground color depend on input HEX color.
Source
File: inc/core/common-functions.php
function astra_get_foreground_color( $hex ) { $hex = apply_filters( 'astra_before_foreground_color_generation', $hex ); // bail early if color's not set. if ( 'transparent' == $hex || 'false' == $hex || '#' == $hex || empty( $hex ) ) { return 'transparent'; } // Get clean hex code. $hex = str_replace( '#', '', $hex ); if ( 3 == strlen( $hex ) ) { $hex = str_repeat( substr( $hex, 0, 1 ), 2 ) . str_repeat( substr( $hex, 1, 1 ), 2 ) . str_repeat( substr( $hex, 2, 1 ), 2 ); } if ( strpos( $hex, 'rgba' ) !== false ) { $rgba = preg_replace( '/[^0-9,]/', '', $hex ); $rgba = explode( ',', $rgba ); $hex = sprintf( '#%02x%02x%02x', $rgba[0], $rgba[1], $rgba[2] ); } // Return if non hex. if ( ! ctype_xdigit( $hex ) ) { return $hex; } // Get r, g & b codes from hex code. $r = hexdec( substr( $hex, 0, 2 ) ); $g = hexdec( substr( $hex, 2, 2 ) ); $b = hexdec( substr( $hex, 4, 2 ) ); $hex = ( ( $r * 299 ) + ( $g * 587 ) + ( $b * 114 ) ) / 1000; return 128 <= $hex ? '#000000' : '#ffffff'; }
Expand full source code Collapse full source code View on Trac