查找颜色
在设备屏幕截图中查找指定颜色及其偏移色,支持多点颜色识别和容差匹配。
接口说明
接口类型
findColor参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| deviceId | string | 是 | 设备ID |
| color | string | 是 | 主颜色(十六进制格式,如 "FFFFFF") |
| offsetColor | string | 是 | 偏移色组 |
| rect | array | 否 | 搜索区域 [x1, y1, x2, y2],默认全屏 |
| threshold | number | 否 | 颜色容差 (0-1),默认 0.9 |
| multiple | boolean | 否 | 是否查找所有匹配位置,默认 false |
| direction | number | 否 | 搜索方向 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元素,可以有效避免误匹配。偏移色的坐标是相对于主颜色点的,设置时要注意相对位置关系。