5

私は現在、色の操作/選択などを調べており、次のコードに出くわしました。誰かが次のコードが何をしているのか教えてくれて、それを分解してくれてありがとう!

$newVal = round(round(($rgb['red'] / 0x33)) * 0x33);

特に0x33とは何ですか

よろしくお願いします

4

4 に答える 4

3

$rgb['red']0x33の最も近い倍数を変換しているようです。

それはおそらくそうしているので、色はいわゆる「ウェブセーフ」カラーパレットになります。これは(私が正しく思い出せば)rgb値が0x33の倍数である色で構成されています。

0x33は、51(10進数)の基数16(16進数)表現です。

于 2010-04-13T00:33:09.197 に答える
1

0x33は51であるため、1バイトの0〜255の値を0〜5にスケーリングしてから、スケールアウトします。これにより、値は値よりも51の高い倍数になります。

于 2010-04-13T00:33:31.903 に答える
0

0x33は、33の16進値です。

何が起こっているのかはよくわかりませんが、任意の色のWebセーフヘックスを計算していると思います。またはこれらの線に沿った何か。

于 2010-04-13T00:32:12.187 に答える
0

@Sethが示したように、色は最も近い「Webセーフ」色に丸められます。これは古い考えであり、ほとんどのカラーディスプレイが8ビットであった時代にさかのぼります。彼らの「ウェブセーフカラーチャート」が彼らの最初の製品だったので、それを人気にした人々の1人はVisiboneでした。

詳細については、 Webカラーを参照してください。

于 2010-04-13T02:11:00.887 に答える