2014-03-13 38 views
0

我有這種格式RGBA(20,40,60,1)rgba中的顏色值,我想以準確的精度轉換爲實數。我怎麼能做到這一點在PHP例如如何將顏色值轉換爲精確的精度使用php

Red 20 = 0.074510 
Green 40 = 0.156863 
Blue 60 = 0.231373 
alpha 1 = 1.000000 
+0

什麼是20和0.074510之間的關係? –

+0

你需要多少精度?例如,'bcdiv(​​「40」,「255」,200)'會在小數點後變爲200。答案似乎是'0,(15686274509803921568627450980392)',無限重複。那麼,什麼是「確切的」_? – Wrikken

+1

我甚至不知道你是如何得到這些十進制值。據我所知,20應該是'0.078125',40應該是'0.15625',60應該是'0.234375'。這甚至不那麼難以計算。 rgb的每個通道有256個級別。所以'20/256'。這很簡單。最接近你的價值觀,每個通道的顏色範圍是258-260。另外,如果20是「0.074510」,那麼這是否意味着40的值是兩倍?然而'0.074510 * 2 = 0.14902'。 –

回答

-1
function color2number($color) { 
    $return = (1/250*$color); 
    return $return 
} 

對於阿爾法你需要一個特殊的函數或第二參數添加到函數,該函數:)

+0

250?這是一個「精確」_的地獄,並且有點迂迴地寫'return $ color/250;'(或者'return $ color/255;'如果我們想要更精確一些。' – Wrikken

+0

哈哈yea 255 xD sry我的壞,寫在我的iPhone上。hard enoigh :) – Pinki

相關問題