1
をRGBカラーを生成し、私は次の規則に従って、ユーザーのデフォルトのアバターの背景のための一貫性のある色を設定したいと思います。各は(繰り返し可能な方法で)ユーザーの名前から
- RGB値を、 (例えば、0〜200)
- "John Smith"や "John Smithy"などのフルネームを使用すると、色が変わります。
- 名前を少し変更すると、まったく別の色になるはずです。
私はこれらの線に沿って何かを考えています:
- は、3つの部分のそれぞれを取ると0の間でフロートにそれを正規化する3等分
- で構成されて何かに名前をハッシュ1
- これらを200倍してr、gまたはb値を取得します。
しかし、私はそれについてどう考えているのかよく分かりません。助言がありますか?もし私が理想的な余分な宝石を手に入れなければ、それをやることができたら。私はすでにいくつかのハッシュのためにMD5を使用しています。
注:これはセキュリティ上の問題ではありません。ちょっと楽しかったので、2つの異なる名前が同じ色をしばらくしてしまうと、それほど問題にはなりませんが、一般的にはうれしいでしょう可能な限り色値を変化させる。
これはまさに私が数年前にしたことです。残念ながら、私のマネージャーの名前は好きではない色にマッピングされていました(ピンクまたはライトオレンジ色でした)。私はそこに定数を導入して、マッピングに影響を与えなければなりませんでした。 –
私は同様のアプローチをカラーラベルに使用しています。しかし、ランダムなRGB値の代わりに、私はHSLを全くランダムな色相で使用しており、明度と彩度のバリエーションは限られています。これにより、一貫した色が得られます。 – Stefan
@Stefanそれは良いアイデアです、私はそれを行うかもしれない、ありがとう。 –