「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > 特定の16進コードの補完的な色を見つける方法は?

特定の16進コードの補完的な色を見つける方法は?

2025-03-23に投稿されました
ブラウズ:709

特定の色の相補色を決定する方法たとえば、現在の色が黒の場合、反対は白でなければなりません。このタスクは、明確な可視性を確保するために動的な色のテキストの対照的な背景色を設定する場合に重要です。 rgb色の色を補完する値を取得します。 if(hex.indexof( '#')=== 0){ hex = hex.slice(1); } // 3桁のヘックスを6桁に変換します。 if(hex.length === 3){ hex = hex [0] hex [0] hex [1] hex [1] hex [2] hex [2]; } if(hex.length!== 6){ 新しいエラーをスローします( '無効なヘックス色。'); } //カラーコンポーネントを反転します。 var r =(255 -parseint(hex.slice(0、2)、16))。toString(16)、 g =(255 -parseint(hex.slice(2、4)、16))。toString(16)、 b =(255 -parseint(hex.slice(4、6)、16))。toString(16); //主要なゼロで各コンポーネントをパッドして返します。 return '#' padzero(r)padzero(g)padzero(b); } function padzero(str、len){ len = len || 2; var zeros = new Array(len).join( '0'); return(zeros str).slice(-len); }

例出力:

    「bw」オプションを備えた高度なバージョンを使用すると、結果がより良いコントラストを提供する必要があるかどうかを指定できます。 if(hex.indexof( '#')=== 0){ hex = hex.slice(1); } // 3桁のヘックスを6桁に変換します。 if(hex.length === 3){ hex = hex [0] hex [0] hex [1] hex [1] hex [2] hex [2]; } if(hex.length!== 6){ 新しいエラーをスローします( '無効なヘックス色。'); } var r = parseint(hex.slice(0、2)、16)、 g = parseint(hex.slice(2、4)、16)、 b = parseint(hex.slice(4、6)、16); if(bw){ //式色が黒か白に近いかどうかを判断するため。 return(r * 0.299 g * 0.587 b * 0.114)> 186 ? '#000000' : '#ffffff'; } //カラーコンポーネントを反転します。 r =(255 -r).ToString(16); g =(255 -g).toString(16); b =(255 -b).ToString(16); //主要なゼロで各コンポーネントをパッドして返します。 return '#' padzero(r)padzero(g)padzero(b); }
  1. 例出力:
  2. [
  3. ]]
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3