css顏色判斷深淺顏色人工智能

/ 計算是不是灰度 閾值越高 越亮 true 暗色 false 亮色
    checkGray(color){
       let r =parseInt(color.substring(1,3),16)* 0.299
       let g =parseInt(color.substring(3,5),16)* 0.587 
       let b =parseInt(color.substring(5,7),16)* 0.114
       let gray = r+g+b
       console.log(color.substring(1,3)+"|"+color.substring(3,5)+"|"+color.substring(5,7))
       console.log(parseInt(color.substring(1,3),16)+"|"+parseInt(color.substring(3,5),16)+"|"+parseInt(color.substring(5,7),16))
       console.log(gray)
       if(gray>100){
         return true
       }else{
         return false
       }
    }
// 獲取顏色樣式
    getColorStyle(color){
        let styleString  = `width: 80px;height: 20px;margin: 0 auto;background-color:${color};`
        if(!this.checkGray(color)){
          styleString+="color:#FFF"
        }
        return styleString
    },

該方法對16進制顏色進行判斷可判斷出顏色是深色還是淺色並給予正確的文字顯示避免文字被顏色遮蓋的情況 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章