FindStr 区域找字

文章目录
  1. 1. 功能
  2. 2. 语法
  3. 3. 参数
  4. 4. 返回值
  5. 5. 示例
  6. 6. 备注

功能

在区域范围内,查找指定颜色的文字,并返回符合要求的坐标 。

语法

序号 = FindStr(左上角x, 左上角y, 右下角x, 右下角y, 文字, 颜色值, 相似度, 返回x坐标, 返回y坐标)

参数

参数 数据类型 解释
左上角x 数值型 查找区域范围的左上角x坐标,区域范围全为0时表示全屏查找。
左上角y 数值型 查找区域范围的左上角y坐标,区域范围全为0时表示全屏查找。
右下角x 数值型 查找区域范围的右下角x坐标,区域范围全为0时表示全屏查找。
右下角y 数值型 查找区域范围的右下角y坐标,区域范围全为0时表示全屏查找。
文字 字符串 待查找的文字,多个文字用“|”隔开。
颜色值 字符串 查找文字的16进制颜色,格式为“BBGGRR”,多个颜色用“|”隔开,偏色使用“-”隔开,比如”FFFFFF-101010|123456”。
相似度 数值型 小数,颜色相似度,取值范围0到1之间,越高越相似。
返回x坐标 数值型变参指针 返回的横坐标x,若没有找到,则返回-1。
返回y坐标 数值型变参指针 返回的纵坐标y,若没有找到,则返回-1。

返回值

数值型 ,返回找到的字符序号,从0开始索引,没找到返回-1。坐标保存在变参指针中。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Dim 索引值,intX,intY

//设置附件中的紫猫字库.txt文档为0号字库
TracePrint SetDictEx(0, "Attachment:紫猫字库.txt")
//使用0号字库文件,之后的找字、识别都在这个字库中匹配
TracePrint UseDict(0)

索引值 = FindStr(0,0,0,0,"紫猫","9f2e3f-000000",1.0,intX,intY)
If 索引值 > -1 Then
Tap intX,intY
End If

索引值 = FindStr(0,0,0,0,"紫猫|学院","9f2e3f-000000",0.9,intX,intY)
If 索引值 > -1 Then
Tap intX,intY
End If

索引值 = FindStr(0,0,0,0,"紫猫|学院","ffffff-202020|351abc-303030",0.9,intX,intY)
Select Case 索引值
Case 0
Traceprint "找到紫猫"
Case 1
Traceprint "找到学院"
Case Else
Traceprint "未找到任何文字"
End Select

备注

  • 当区域范围均为0时,表示全屏查找文字,强烈建议缩小范围查找,这样可以提高效率。
  • 偏色是微调,指对RBG三色分别确定取色范围。相似度是粗调,指对颜色整体做百分比判断。
  • 颜色格式为“BGR”,目前不支持HSV颜色、不支持背景色识别。
  • 目前只支持附件中的字库,不支持绝对路径,故更新字库后,一定要记得更新附件。