我有toubles與在一個RGB顏色代碼轉換三重 HEX顏色代碼。三重HEX代碼爲RGB
迄今HEX到RGB我得的是:
if(strlen($hex) == 3) {
$color['r'] = hexdec(substr($hex, 0, 1) . $r);
$color['g'] = hexdec(substr($hex, 1, 1) . $g);
$color['b'] = hexdec(substr($hex, 2, 1) . $b);
}
當我轉換RGB代碼回到HEX這是一個不同的一個。
例如爲:#FFF becomes 15, 15, 15
但15, 15, 15 is #0F0F0F
我也不能確定RGB轉換回三重十六進制代碼。我對RGB爲十六進制代碼如下所示:
$hex = str_pad(dechex($r), 2, "0", STR_PAD_LEFT);
$hex.= str_pad(dechex($g), 2, "0", STR_PAD_LEFT);
$hex.= str_pad(dechex($b), 2, "0", STR_PAD_LEFT);
任何幫助,不勝感激!提前致謝!
這似乎是「起飛填充」會讓它回來?如果要輸出3或6,則需要事先知道:如果輸出6,則將每個分量縮放16個。某些瀏覽器可能不支持3,因此我總是會發射6. – 2012-01-06 00:02:10
因此,這就是我如何返回RGB HEX,對吧?但是,從三重HEX代碼錯誤的RGB代碼呢? – Fabian 2012-01-06 00:07:30
@pst應該是一個答案,而不是評論?在解釋該評論時多加點工作,你可以獲得一些不錯的聲望點。 – Jan 2012-01-06 00:16:34