Flash在轉(zhuǎn)換16進(jìn)制色彩時(shí)有一個(gè)Bug,當(dāng)某一顏色值為00時(shí),F(xiàn)lash自動(dòng)取00的值為0,它計(jì)算實(shí)值,認(rèn)為是空。這樣類(lèi)似于#00FFCC得色值會(huì)被轉(zhuǎn)換為#FFCC。 Quester為此寫(xiě)了一個(gè)函數(shù)進(jìn)行補(bǔ)位計(jì)算,希望對(duì)遇到此問(wèn)題的朋友有些幫助。
function RGB2HEX (R, G, B) { // 補(bǔ)位操作 RR = R.toString(16).toUpperCase(); if (length(RR)<2) { RR = "0" add RR; } GG = G.toString(16).toUpperCase(); if (length(GG)<2) { GG = "0" add GG; } BB = B.toString(16).toUpperCase(); if (length(BB)<2) { BB = "0" add BB; } // 用于網(wǎng)頁(yè) 的 Hex 值 Hex = "#" add RR add GG add BB; return Hex; }
代碼拷貝框
[Ctrl+A 全部選擇 然后拷貝]
下面是秋水精減后的代碼:
function RGB2HEX (R, G, B) { // 補(bǔ)位操作 RR = (256 + R).toString(16).toUpperCase().substr(1); GG = (256 + G).toString(16).toUpperCase().substr(1); BB = (256 + B).toString(16).toUpperCase().substr(1); // 用于網(wǎng)頁(yè) 的 Hex 值 Hex = "#" add RR add GG add BB; return Hex; }
代碼拷貝框
[Ctrl+A 全部選擇 然后拷貝]
出處:藍(lán)色理想
責(zé)任編輯:藍(lán)色
◎進(jìn)入論壇Flash專(zhuān)欄版塊參加討論
|