微信小程序的图片色彩分析,窃取主色调,调色板

1、在微信小程序中创建包管理器 package.json

npm init -y

2、安装 Mini App Color Thief 包

npm i --save miniapp-color-thief

3、构建 npm

4、wxml

html 复制代码
<canvas canvas-id="myCanvas"></canvas>
<button bindtap="chooseImage">chooseImage</button>
<view wx:for="{{ palette }}" wx:key="index">
  <view style="width:32px;height:32px;background-color: {{ item }}"></view>
  <text>{{ item }}</text>
</view>

5、js

javascript 复制代码
data: {
    palette: []
  },
  /*
  获取图片的色板
  colorThief(data).palette(count, quality).get(); // [[0,0,0],[0,0,0],[0,0,0]...]
    {Number} count 返回色板的颜色数量 ( 1 < count < 256 )
    {Number} quality 计算颜色的精度,默认为 10
  */
  chooseImage() {
    const ctx = wx.createCanvasContext('myCanvas')
    wx.chooseImage({
      count: 1,
      sizeType: ['original', 'compressed'],
      sourceType: ['album', 'camera'],
      success: res => {
        ctx.drawImage(res.tempFilePaths[0], 0, 0, 300, 150)
        ctx.draw(true, () => {
          wx.canvasGetImageData({
            canvasId: "myCanvas",
            x: 0,
            y: 0,
            width: 100,
            height: 100,
            success: res => {
              let palette = colorThief(res.data)
                .palette(3, 10)
                .getHex();
              this.setData({ palette })
            }
          });
        })
      }
    })
  },

6、结果

相关推荐
2501_9339072115 分钟前
如何选择宁波小程序服务,保障品质与效率?
科技·微信小程序·小程序
Greg_Zhong18 分钟前
微信小程序中实现气泡提示框、图片css加载动画及容错处理
微信小程序·自定义气泡框·图片css加载动画
吴声子夜歌35 分钟前
小程序——引入WeUI组件库
小程序
CHU7290351 小时前
一番赏爬塔闯关小程序前端功能玩法设计解析
前端·小程序
大罗辑1 小时前
好用的软考刷题小程序!
小程序·2026软考考试·软考刷题小程序·软考备考小程序·软考考试题库·软考考试内容
凉辰16 小时前
uniapp实现生成海报功能 (开箱即用)
javascript·vue.js·小程序·uni-app
奶糖 肥晨17 小时前
微信小程序定位功能开发实战:实现自动定位、城市切换与地图导航
微信小程序·小程序
笨笨狗吞噬者17 小时前
【uniapp】小程序支持分包引用分包 node_modules 依赖产物打包到分包中
前端·微信小程序·uni-app
用户69371750013841 天前
微信悄悄搞大事!原生智能助手秘密研发,2026年改变亿人使用习惯
android·后端·微信小程序
CHU7290351 天前
一蔬一饭总关情:生鲜买菜商城APP的生活美学
小程序·生活