函数:tsFindText 触动文字识别坐标
函数功能:加载自定义的触动精灵点阵字库工具生成的点阵字库返回屏幕上的文字的坐标
引擎版本:iOS v2.3.9,Android v2.2.1 以上
函数方法
x, y = tsFindText(index,str,x1,y1,x2,y2,"c0,c1",alpha)
返回值:number x,y
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
index | number | 是 | 字库标识,由 addTSOcrDict/addTSOcrDictEx 函数返回值生成 |
str | string | 是 | 想要查找的字符串 |
x1 | number | 是 | 欲识别的区域左上角顶点屏幕横坐标 |
y1 | number | 是 | 欲识别的区域左上角顶点屏幕纵坐标 |
x2 | number | 是 | 欲识别的区域右下角顶点屏幕横坐标 |
y2 | number | 是 | 欲识别的区域右下角顶点屏幕纵坐标 |
c0, c1 | string | 是 | 偏色范围,由触动精灵点阵字库工具中获取, 需要与制作字库时所设值保持一致,多组偏色用 # 分割 |
alpha | number | 是 | 精确度,范围 0 - 100 |
返回值 | 类型 | 说明 |
---|---|---|
x, y | number | 找到的字符串坐标(字符串左上角点),如未找到则返回 -1,-1 |
函数用例
在屏幕上查找指定文字的坐标(文件格式)
--相同字库只需要加载一次(addTSOcrDictEx/addTSOcrDict 函数),重复加载会导致内存溢出
index = addTSOcrDict("dict.txt")
--在屏幕上找"弓"字的坐标
x, y = tsFindText(index,"弓",35, 226, 385, 264,"fffbff,737573#FFFFFF,000000",90) --两组偏色
toast("识别到的坐标 x:"..x..",y:"..y)
在屏幕上查找指定文字的坐标(table 格式)
--相同字库只需要加载一次,重复加载会导致内存溢出
--如果 table 过大使用 addTSOcrDictEx 可能会导致报错,报错请换 addTSOcrDict 后再试
local tab = {
"e000000000001c07c07@1$.$15$11$7",
}
local index = addTSOcrDictEx(tab)
x, y = tsFindText(index,"弓",0,0,200,200,"898989,646464",90)
toast("识别到的坐标 x:"..x..",y:"..y)
注意事项
触动精灵字库工具下载地址和使用手册:http://www.touchsprite.com/docs/4961
本函数为打码点阵识别加强版,突破大漠工具最高识别 11 行像素的限制,更适合高分辨率的移动端脚本开发。
相同字库只需要加载一次(addTSOcrDictEx/addTSOcrDict 函数),重复加载会导致内存溢出。
生成的字库文件格式必须为 UTF-8 格式,字库首尾不能包含空行、空格等。
如果 table 过大使用 addTSOcrDictEx 可能会导致报错,报错请换 addTSOcrDict 后再试。
字库文件必须放置于触动精灵的
res
目录,加载字库时无需填写绝对路径。