Skip to content

查找颜色

在设备屏幕截图中查找指定颜色及其偏移色,支持多点颜色识别和容差匹配。

接口说明

接口类型

findColor

参数

参数名类型必填说明
deviceIdstring设备ID
colorstring主颜色(十六进制格式,如 "FFFFFF"
offsetColorstring偏移色组
rectarray搜索区域 [x1, y1, x2, y2],默认全屏
thresholdnumber颜色容差 (0-1),默认 0.9
multipleboolean是否查找所有匹配位置,默认 false
directionnumber搜索方向 0-3,默认 0

返回值

单个匹配(multiple = false):

javascript
{
    x: 100,  // 匹配点的X坐标
    y: 200   // 匹配点的Y坐标
}

多个匹配(multiple = true):

javascript
[
    { x: 100, y: 200 },
    { x: 150, y: 250 },
    { x: 200, y: 300 }
]

基本使用

javascript
// 查找单个颜色点
const result = await apiInvoke('findColor', {
    deviceId: 'P72578581E07',
    color: '000000',              // 主颜色
    offsetColor: '10|0|f6f6f6'    // 偏移色
});

if (result) {
    console.log(`找到颜色点在 (${result.x}, ${result.y})`);
}

功能说明

颜色格式

颜色使用十六进制格式表示:

  • 888888 - 灰色

偏移色格式

偏移色用于多点颜色匹配,格式为:"x|y|color,x|y|color,..."

搜索方向

direction说明
0从左到右,从上到下(默认)
1从右到左,从上到下
2从左到右,从下到上
3从右到左,从下到上

颜色容差

threshold 参数控制颜色匹配的精确度:

  • 1.0 - 完全匹配,不允许任何偏差
  • 0.9 - 允许约10%的颜色偏差(推荐)
  • 0.8 - 允许约20%的颜色偏差
  • 0.7 - 允许约30%的颜色偏差

💡 提示

多点颜色匹配比单点更准确。建议使用3-5个特征点来识别UI元素,可以有效避免误匹配。偏移色的坐标是相对于主颜色点的,设置时要注意相对位置关系。

商务合作:try.catch@foxmail.com