6

ARGB カラーを CSS 互換の 16 進数に変換したい

例えば:

-1に変換する必要があります#FFFFFF

また

-16777216#000000

JavaScriptでそれを行うにはどうすればよいですか?

4

3 に答える 3

9

これにより、アルファ成分が破棄されます

function argbToRGB(color) {
    return '#'+ ('000000' + (color & 0xFFFFFF).toString(16)).slice(-6);
}

あなたの色は32ビットで署名されており、完全なアルファ(0xFF)は数値を負にします。このコードは、符号なしの数値に対しても機能します。

于 2012-09-25T09:24:14.940 に答える
0

次のようなものが必要だと思います:

function convertToColorString (argb){ 
   return '#'+ ('000000' + (argb+16777216).toString(16)).slice(-6); 
}
于 2012-09-25T09:19:42.927 に答える
0

この質問を確認することをお勧めします:整数を JavaScript の色に変換するにはどうすればよいですか?

その質問に対する私の回答は、大まかに言って、自分でコーディングするのではなくライブラリを使用したい場合は、pusher.color Javascript ライブラリが整数から HTML への色変換をサポートしていることを示唆するものでした。

// Will set c to "#695083"
var c = pusher.color('packed_argb', -9875325).hex6();

上記を試してみたい場合は、JSFiddleをご覧ください。

また、上記のライブラリを作成したという免責事項を追加させてください。

于 2012-09-25T16:42:55.227 に答える