需要解决方案或描述:如何将颜色值从ARGB转换为可用于css的RGBA:
示例:
ARGB color : #ff502797 convert to RGBA
RGBA result example: rgba(80,39,151,1)
THX。
答案 0 :(得分:0)
ARGB 包含4组十六进制值(频道):Alpha,红色,绿色,蓝色。
<强>方案:强> 例如:#ff502797 - ARGB格式的颜色 职位要素:
0,1 - Alpa (ff)
2,3 - Red (50)
4,5 - Green (27)
6,7 - Blue (97)
此后将每个频道转换为十进制。并将他们的位置推入 RBGA : rgba(红色,绿色,蓝色,Alpha) - rgba(80,39,151,1)
示例功能:
function argb2rgba($color)
{
$output = 'rgba(0,0,0,1)';
if (empty($color))
return $output;
if ($color[0] == '#') {
$color = substr($color, 1);
}
if (strlen($color) == 8) { //ARGB
$opacity = round(hexdec($color[0].$color[1]) / 255, 2);
$hex = array($color[2].$color[3], $color[4].$color[5], $color[6].$color[7]);
$rgb = array_map('hexdec', $hex);
$output = 'rgba(' . implode(",", $rgb) . ',' . $opacity . ')';
}
return $output;
}