|
地板
发表于 2022-6-25 19:39:05
|
只看该作者
四川省遂宁市
另外。可以自己添加一个子程序,找图片名,改成找图片字节集数组,启动软件时,就把需要找的图先读到字节集数组里面。,否则原本的每次读取都得去读一次图片文件到字节集
简单搞了下,你试试看能不能用吧。
|
FindPic_找图返_单坐标_字节集 | 整数型 | | |
X1 | 整数型 | | | | Y1 | 整数型 | | | | X2 | 整数型 | | | | Y2 | 整数型 | | | | 图字节集数组 | 字节集 | | | | 颜色色偏 | 文本型 | | | | 相似度 | 整数型 | | | | 查找方向 | 整数型 | | | | intX | 整数型 | | | | intY | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 临时变量_1 | 整数型 | | | 临时变量_2 | 整数型 | | | 临时变量_3 | 整数型 | | | 大图宽度 | 整数型 | | | 大图高度 | 整数型 | | | 小图宽度 | 整数型 | | | 小图高度 | 整数型 | | | 大图 | 字节集 | | | 小图 | 字节集 | | | 图像名称数组 | 文本型 | | 0 | 序号1 | 整数型 | | | 图像位数 | 整数型 | | | ccx | 整数型 | | | m | 整数型 | | | 判断是否重复文本 | 文本型 | | | 判断是否重复字节集 | 字节集 | | |
如果真 (X1 > X2 ) 临时变量_1 = X1  临时变量_2 = X2  X1 = 临时变量_2  X2 = 临时变量_1 如果真 (Y1 > Y2 ) 临时变量_1 = Y1  临时变量_2 = Y2  Y1 = 临时变量_2  Y2 = 临时变量_1 颜色色偏 = 取文本左边 (矫正色彩描述 (颜色色偏), 6) 如果真 (相似度 < 0 或 相似度 > 100 ) 相似度 = 95 如果真 (查找方向 < 0 或 查找方向 > 3 ) 查找方向 = 0 如果真 (取数组成员数 (图字节集数组 ) = 0 ) 信息框 (“图片名参数不能为空”, 0, , ) intX = -1  intY = -1  临时变量_1 = -1 返回 (临时变量_1 )大图 = 窗口截图 (全局窗口句柄, X1, Y1, X2, Y2)大图宽度 = 取字节集数据 (取字节集中间 (大图, 19, 4 ), #整数型, )大图高度 = 取字节集数据 (取字节集中间 (大图, 23, 4 ), #整数型, )图像位数 = 取字节集数据 (取字节集中间 (大图, 29, 2 ), #短整数型, ) 如果真 (图像位数 ≠ 24 ) 信息框 (“当前截图数据为” + 到文本 (图像位数 ) + “位,” + “截图数据必须是24位格式无压缩的BMP图像”, 0, , ) intX = -1  intY = -1  临时变量_1 = -1 返回 (临时变量_1 )判断是否重复文本 = “” 变量循环首 (1, 取数组成员数 (图字节集数组 ), 1, 序号1 ) 如果真 (图字节集数组 [序号1 ] = { }) 到循环尾 () 如果 (寻找字节集 (判断是否重复字节集, 到字节集 (“|”) + 图像名称数组 [序号1 ], 0 ) = -1 )  判断是否重复字节集 = 判断是否重复文本 + 到字节集 (“|”) + 图像名称数组 [序号1 ]       小图 = 图像名称数组 [序号1 ] 如果真 (取字节集左边 (小图, 2 ) ≠ { 66, 77 })  intX = -1   intY = -1   临时变量_1 = -1  到循环尾 () 小图宽度 = 取字节集数据 (取字节集中间 (小图, 19, 4), #整数型, ) 小图高度 = 取字节集数据 (取字节集中间 (小图, 23, 4 ), #整数型, ) 图像位数 = 取字节集数据 (取字节集中间 (小图, 29, 2 ), #短整数型, ) 如果真 (小图宽度 > 大图宽度 或 小图高度 > 大图高度 或 图像位数 ≠ 24 )  如果真 (图像位数 ≠ 24 )  信息框 (“当前小图数据为” + 到文本 (图像位数 ) + “位,” + “小图数据必须是24位格式无压缩的BMP图像”, 0, , ) intX = -1  intY = -1   临时变量_1 = -1  到循环尾 () 临时变量_1 = 位图找图返单坐标_汇编 (大图, 小图, 0, 0, 大图宽度 - 1, 大图高度 - 1, 颜色色偏, 相似度, 查找方向, intX, intY) 如果真 (临时变量_1 = 0 )  intX = intX + X1   intY = intY + Y1  返回 (序号1 - 1 )  变量循环尾 ()返回 (-1 )
|
|