检测图像/文本
在某些游戏或任务中,屏幕上坐标的位置总是在变化,这时使用图像检测和文本检测就显得尤为重要。对于图像检测,我们使用所谓的模板,也就是需要在屏幕上查找的那部分图像。至于文本检测,屏幕上出现的任何文本都可以被检测到。
图像检测
在使用图像检测之前,您需要在设备屏幕上截取一个模板,要截取模板,您可以按照以下步骤操作:
1. 点击截取模板

2. 截取用于检测的屏幕区域

3. 保存您的图像模板

保存模板图像后,我们就可以使用该模板执行图像检测。对于图像检测,您可以使用 Screen:click()。例如
等效代码
# click 'stop-button.jpg'
Screen:click('stop-button.jpg');
等效块构建器
文本检测
对于文本检测,您可以使用 Screen:click() 方法,但需要在第二个参数中传入 ClickParams():setDetectionType('TEXT') 来修改点击行为。setDetectionType 仅接受 2 个值:TEXT 和 IMAGE,默认检测类型为 IMAGE。因此,要执行文本识别,您需要将 setDetectionType 的值改为 TEXT。例如
等效代码
Screen:click('your text', ClickParams():setDetectionType('TEXT'):setDetectionMethod(1))
等效块构建器
如果您仔细观察,会发现有 2 种文本检测方法:
- 逐词检测(默认) 如果您使用此方法,文本检测会将匹配结果拆分为多个单词片段,在这种情况下,最佳场景是您只想检测 1 个单词
- 逐行检测 如果您使用此方法,文本检测会将匹配结果拆分为多个行片段,在这种情况下,最佳场景是您想同时检测 2 个或更多单词
要更改检测方法,您可以修改 setDetectionMethod() 的值。此函数的参数为:
1表示逐词检测2表示逐行检测
下一步
当您熟悉了基础检测后,请阅读检测策略,了解在更高级的宏中何时使用 Screen、Region、图像检测、文本检测、动态缩放、灰度和分数调优。