當你需要根據不同圖片顯示不同的邊框色或背景色時,你可以使用React-Color-Thief, 它會告訴你這張圖片有哪些顏色,並按顏色比重返回RGB值給你。
如何使用
const colorThief = new ColorThief()
colorThief.getColor(imgDom) //需要在Image onload完成後呼叫
colorThief.getColorFromUrl(imgUrl).then(...) //非同步方法,返回一個Promise
//返回8個佔比最多的顏色
const colorThief = new ColorThief()
colorThief.getPalette(imgDom, 8) //需要在Image onload完成後呼叫
ColorThief 方法
function | returns |
---|---|
getColor(imgDom[, quality]) | [r, g, b] |
getPalette(imgDom[, colorCount, quality]) | [ [r, g, b], [r, g, b], …] |
getColorFromUrl(imgUrl[, quality]) | [r, g, b] |
getColorAsync(imgUrl[, quality]) | [r, g, b] |
convertColorRgb(rgbArray) | “rgb(r, g, b)” |
colorCount
顏色數量,預設返回10組顏色<br/>quality
精確度(整數),1是最精確的,預設值是10。值越大抓取速度越快,準確度越低。