大漠文档接口说明提供了几个使用系统字库找字的函数,但现在的游戏使用的字体能和系统字体吻合的非常的少,再说系统字库,大漠最少的也是常用3500字,相对而言比较大,识别速度会慢很多,还是建议自己制作字库,这里为了模块的完整一并封装了进来,命令有:FindStrWithFont;FindStrWithFontE;FindStrWithFontEx
视频链接:
511遇见大漠模块制作
模块源码
.版本 2
.子程序 FindStrWithFont, 整数型, 公开, 在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意个字符串的组合)返回值:(返回字符串的索引 没找到返回-1, 比如"长安|洛阳",若找到长安,则返回0)
.参数 x1, 整数型, , x1 整形数:区域的左上X坐标
.参数 y1, 整数型, , y1 整形数:区域的左上Y坐标
.参数 x2, 整数型, , x2 整形数:区域的右下X坐标
.参数 y2, 整数型, , y2 整形数:区域的右下Y坐标
.参数 string, 文本型, , string 字符串:待查找的字符串,可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
.参数 color_format, 文本型, , color_format 字符串:颜色格式串, 可以包含换行分隔符,语法是","后加分割字符串. 注意,RGB和HSV格式都支持.
.参数 sim, 双精度小数型, , sim 双精度浮点数:相似度,取值范围0.1-1.0
.参数 font_name, 文本型, , 系统字体名称,比如“宋体”
.参数 font_size, 整数型, , font_size 整形数:系统字体尺寸,这个尺寸一定要以大漠综合工具获取的为准.如果获取尺寸看视频教程.
.参数 flag, 整数型, , 字体类别 取值可以是以下值的组合,比如1+2+4+8,2+4. 0表示正常字体
.参数 intX, 整数型, 参考, intX 变参指针:返回X坐标没找到返回-1
.参数 intY, 整数型, 参考, intY 变参指针:返回Y坐标没找到返回-1
返回 (obj.数值方法 (“FindStrWithFont”, x1, y1, x2, y2, string, color_format, sim, font_name, font_size, intX, intY))
.子程序 FindStrWithFontE, 文本型, 公开, 在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意个字符串的组合)返回值:(返回字符串序号以及X和Y坐标,形式如"id|x|y", 比如"0|100|200",没找到时,id和X以及Y均为-1,"-1|-1|-1")
.参数 x1, 整数型, , x1 整形数:区域的左上X坐标
.参数 y1, 整数型, , y1 整形数:区域的左上Y坐标
.参数 x2, 整数型, , x2 整形数:区域的右下X坐标
.参数 y2, 整数型, , y2 整形数:区域的右下Y坐标
.参数 string, 文本型, , string 字符串:待查找的字符串,可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
.参数 color_format, 文本型, , color_format 字符串:颜色格式串, 可以包含换行分隔符,语法是","后加分割字符串. 注意,RGB和HSV格式都支持.
.参数 sim, 双精度小数型, , sim 双精度浮点数:相似度,取值范围0.1-1.0
.参数 font_name, 文本型, , 系统字体名称,比如“宋体”
.参数 font_size, 整数型, , font_size 整形数:系统字体尺寸,这个尺寸一定要以大漠综合工具获取的为准.如果获取尺寸看视频教程.
.参数 flag, 整数型, , 字体类别 取值可以是以下值的组合,比如1+2+4+8,2+4. 0表示正常字体
返回 (obj.数值方法 (“FindStrWithFontE”, x1, y1, x2, y2, string, color_format, sim, font_name, font_size))
.子程序 FindStrWithFontEx, 文本型, 公开, 在屏幕范围(x1,y1,x2,y2)内,查找string(可以是任意个字符串的组合)返回值:(返回所有找到的坐标集合,格式如下:"id,x0,y0|id,x1,y1|......|id,xn,yn")
.参数 x1, 整数型, , x1 整形数:区域的左上X坐标
.参数 y1, 整数型, , y1 整形数:区域的左上Y坐标
.参数 x2, 整数型, , x2 整形数:区域的右下X坐标
.参数 y2, 整数型, , y2 整形数:区域的右下Y坐标
.参数 string, 文本型, , string 字符串:待查找的字符串,可以是字符串组合,比如"长安|洛阳|大雁塔",中间用"|"来分割字符串
.参数 color_format, 文本型, , color_format 字符串:颜色格式串, 可以包含换行分隔符,语法是","后加分割字符串. 注意,RGB和HSV格式都支持.
.参数 sim, 双精度小数型, , sim 双精度浮点数:相似度,取值范围0.1-1.0
.参数 font_name, 文本型, , 系统字体名称,比如“宋体”
.参数 font_size, 整数型, , font_size 整形数:系统字体尺寸,这个尺寸一定要以大漠综合工具获取的为准.如果获取尺寸看视频教程.
.参数 flag, 整数型, , 字体类别 取值可以是以下值的组合,比如1+2+4+8,2+4. 0表示正常字体
易语言调用:
.版本 2
.支持库 spec
.子程序 _按钮11_被单击, , , FindStrFastEx
.局部变量 tmp, 文本型
.局部变量 ss, 文本型, , "0"
.局部变量 sss, 文本型, , "0"
.局部变量 count, 整数型
.局部变量 x, 整数型
.局部变量 y, 整数型
.局部变量 i, 整数型
tmp = FindStrFastEx (0, 0, 2000, 2000, “天盾|鬼谷|墨攻|尚贤”, “ebb200-000000”, 0.9)
' “1,35,251|0,36,268”
调试输出 (tmp)
.如果 (取文本长度 (tmp) > 0)
ss = 分割文本 (tmp, “|”, )
count = 取数组下标 (ss, )
.计次循环首 (count, i)
处理事件 ()
sss = 分割文本 (ss [i], “,”, )
x = 到整数 (sss [2])
y = 到整数 (sss [3])
调试输出 (到文本 (x) + “,” + 到文本 (y))
MoveTo (x, y)
延时 (500)
LeftClick ()
延时 (500)
.计次循环尾 ()
源码:511遇见易语言大漠单多线程模块制作
易语言封装免注册免查杀大漠模块命令教程
易语言大漠单线程模块制作使用系统字库找字