前端-获取图片主色调

参考自张鑫旭,地址:https://www.zhangxinxu.com/wordpress/2014/08/image-dominant-color-get-rgbaster-js/
插件git地址:https://github.com/briangonzalez/rgbaster.js

分四步

  1. 下载插件
    npm i rgbaster -S
  2. 引入插件
    import rgbaster from 'rgbaster'
  3. 使用插件
let result = rgbaster(
   this.imgSrc,  // 图片地址
   {
      ignore: ['rgb(255,255,255)', 'rgb(0,0,0)'],  // 要忽略识别的颜色
      scale: 0.6 // 查询时缩小图片,降低精度。换取识别速度提高
   }
 )
  1. 为所欲为
result.then((res)=>{
  let imgColor = res[0].color // rgb(68,50,36)
  document.getElementsByTagName('body')[0].style.background = imgColor 
})

完整代码

<template>
  <div>
    <img :src="imgSrc" alt="">
  </div>
</template>

<script>
import rgbaster from 'rgbaster'
export default {
  data() {
    return {
      imgSrc: require('@/assets/6.jpg')
    }
  },
  mounted() {
    let result = rgbaster(
      this.imgSrc, 
      {
        ignore: ['rgb(255,255,255)', 'rgb(0,0,0)']
      }
    )
    result.then((res)=>{
      console.log(res[0].color);
      document.getElementsByTagName('body')[0].style.background = res[0].color
    })
  }
}
</script>

<style>
  img {
    width: 300px;
    margin: 0 auto;
    margin-top: 50px;
    display: block;
  }
</style>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,981评论 1 45
  • 37. 算法 算法地址 数据结构与算法 JavaScript 描述. 章节练习https://github.com...
    Gaizka阅读 2,767评论 0 1
  • 正则 正则 地址JS正则表达式元字符 http://segmentfault.com/a/119000000247...
    飞菲fly阅读 4,801评论 0 5
  • 你面带微笑想要拥抱我 身后却紧握着利刃 我看见了,但我不言语 我以为我们是最好的关系 我依旧选择拥抱你 后来你终是...
    郁衡子阅读 1,417评论 4 1
  • 01 秋日海棠花开 作者:高英 蓓蕾含情惜初发,绿叶有意护新芽。 清风殷勤来探问,阳光时常表牵挂。 天高云淡风景好...
    泠风思语阅读 1,573评论 0 3