- 按键工程师
- 742060
- 2281
- 5
- 881 朵
- 10799 个
- 580 个
- 48300
- 2011-08-18
|
1#
t
T
发表于 2016-04-21 18:16
|
|只看楼主
零基础,轻松学习安卓按键,大家好,我是山海师~~~ 安卓按键除了能够做到多点找色\比色\找图之外, 还能通过制作好的字库来实现找字的功能. 今天的教程就来介绍下找字的命令, 以及字库的制作 | >>>>总目录贴入口<<<<
制作字库
在使用找字命令之前, 我们需要先进行的准备工作就是制作字库. 一般我们可以通过按键助手自带的抓抓工具还有大漠综合工具来制作字库. 因为使用大漠综合工具制作字库之后还需要对颜色进行转换, 比较麻烦, 所以在这里就不多做介绍了. 有兴趣的同学可以到这个帖子中具体查看使用大漠综合工具制作字库的步骤: 大漠综合工具制作字库
这里就重点介绍下使用按键抓抓工具如何来制作字库:
第一步: 连接上手机设备, 打开手机助手抓抓, 点击截屏, 把要包含要找的字的画面截取下来
- 您所在的用户组无法下载或查看附件
第二步: 点击"选取范围" 把要找的字的范围截取下来. 这里以制作"应用宝"三个字为例
- 您所在的用户组无法下载或查看附件
第三步: 点击右上角放大镜按钮, 打开放大镜, 用鼠标选取字的颜色并添加到颜色列表里
- 您所在的用户组无法下载或查看附件
第四步: 设置好适当的偏色, 在颜色列表中勾选上字体对应的颜色
- 您所在的用户组无法下载或查看附件
第五步: 点击右上角"制作字库"标签, 切换到字库界面. 点击"提取点阵(单个)",把字的点阵信息添加到下方的列表里
- 您所在的用户组无法下载或查看附件
第六步: 单击点阵信息, 为这个点阵添加对应的文字, 然后按回车(或者点击"添加到字库"按钮)
- 您所在的用户组无法下载或查看附件
最后: 在下方设置好相似度, 识别区域会自动显示识别到的文字. 这样字库就制作完成了. 同时你在这里也可以对字库路径进行查看修改等等 默认的字库路径是在手机助手安装目录中, 名为: mq_soft.txt
- 您所在的用户组无法下载或查看附件
字库制作完毕后, 把这个字库文件添加到手机助手的附件中, 之后就可以对字库进行调用了.
找字命令
命令名称 | SetDict | 命令功能 | 设置字库文件 | 命令参数 | index 整形数:字库的序号,取值为0-9,目前最多支持10个字库 file-name 字符串:字库路径及其文件名
| 返回值 | 整形数,失败返回0,成功返回1
|
命令名称 | UseDict | 命令功能 | 设置使用哪个字库文件进行识别(index范围:0-9) 设置之后,永久生效,除非再次设定 | 命令参数 | index 整形数:字库的序号,取值为0-9,目前最多支持10个字库
| 返回值 | 整形数,失败返回0,成功返回1
|
这两个命令是配套来使用, 用来设置和加载对应的字库文件的
1. 可以使用 SetDict 命令设置多个字库文件. 2. 不同的字库不能使用相同的编号; 最多可以设置10个字库编号 3. 可以使用UseDict 来切换使用不同的字库,但是在同一个时间只能使用其中一个字库. |
命令名称 | Findstr | 命令功能 | 在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意个字符串的组合), | 命令参数 | x1:整形数:区域的左上X坐标 y1:整形数:区域的左上Y坐标 x2:整形数:区域的右下X坐标 y2:整形数:区域的右下Y坐标 string 字符串:待查找的字符串,可以是字符串组合,比如"长安|洛阳|大雁塔",中间 用"|"来分割字符串 color_format:字符串:颜色格式串. 可以包含换行分隔符,语法是","后加分割字符串.具体可以查看下面的示例. sim:双精度浮点数:相似度,取值范围0.1-1.0 intX 变参指针:返回X坐标 没找到返回-1 intY 变参指针:返回Y坐标 没找到返回-1
| 返回值 | 索引值:整形数,返回字符串的索引 没找到返回-1
|
命令名称 | Ocr | 命令功能 | 识别指定范围内符合指定相似度的颜色偏移特征组的字符串 | 命令参数 | x1:整形数:区域的左上X坐标 y1:整形数:区域的左上Y坐标 x2:整形数:区域的右下X坐标 y2:整形数:区域的右下Y坐标 color_format:字符串:颜色格式串. 可以包含换行分隔符,语法是","后加分割字符串. 具体可以查看下面的示例. sim:双精度浮点数:相似度,取值范围0.1-1.0
| 返回值 | 字符串返回识别到的字符串,失败返回空
|
这两个命令都是和找字有关. Findstr 是根据颜色和具体的字来找字的坐标; Ocr 正好相反是根据颜色来识别具体的字. 范例 - Dim intX,intY,ocrstr
- FindStr 105,322,185,365,"应用宝","F8F8F8-101010|BCB7B3-101010",1.0,intX,intY
- If intx > -1 Then
- TracePrint "找到应用宝"
- Else
- TracePrint "没找到"
- End If
- ocrstr = Ocr(105, 322, 185, 365, "F8F8F8-101010|BCB7B3-101010", 0.9)
- TracePrint "当前找到的字是: " & ocrstr
复制代码赠人玫瑰手有余香~~~你的一个顺手回复也许就可以让这个帖子给更多的人看到,就能帮助更多的人~~~
|