[关闭]
@lisaisacat 2020-02-03T17:51:51.000000Z 字数 2551 阅读 1605

v3.1.8 新增功能

未分类


目录

释放文件

引擎版本:Android v3.1.8 及其以上版本,增加了 TSP 脚本释放文件到特定平台中的功能,就是说可以决定文件(包括除 lua 格式外的所有文件)是释放到安卓真机中,还是安卓模拟器中,还是真机和模拟器中都释放,比如说安卓 ts.so 分安卓真机和安卓模拟器两个版本,v3.1.8 以前版本打包真机的 ts.so 则模拟器无法使用,打包模拟器的 ts.so 则真机无法使用,现在设置特定的文件名前缀的 ts.so 可以在安卓真机和模拟器上都使用。
安卓真机文件前缀:__pf_android_arm__文件名称,只释放到安卓真机中。
安卓模拟器文件前缀:__pf_android_x86__文件名称,只释放到安卓模拟器中。
安卓真机/安卓模拟器文件前缀:__pf_android__文件名称,可以释放到安卓真机和安卓模拟器中。
注意:修改文件前缀后需要重新打包脚本才会生效。

函数:findImageInRegionFuzzy 区域模糊找图

函数名称:区域找图、模糊找图、区域模糊找图
函数功能:在指定区域中,寻找指定的图案,返回其左上角顶点坐标,支持模糊查找。
支持版本:引擎版本 iOS v1.0,Android v2.1.0 以上
函数方法
x, y = findImageInRegionFuzzy(picpath,degree,x1,y1,x2,y2,alpha,type,value)
返回值: x, y

参数 类型 字段 说明
picpath string 必填 将要寻找的图片文件名(Android 仅支持 png 格式))
degree number 必填 寻找精度,范围:1 ~ 100,当是 100 时为完全匹配
x1 number 必填 找色区域左上角顶点屏幕横坐标
y1 number 必填 找色区域左上角顶点屏幕纵坐标
x2 number 必填 找色区域右下角顶点屏幕横坐标
y2 number 必填 找色区域右下角顶点屏幕纵坐标
mask number 必填 忽略的颜色值(透明色),若无请填 0
type number 必填 找图类型,默认不写为 RGB 找图,更多请看注意事项
value number 选填 二值化阈值,作为图像二值化的参照值,选填,引擎版本仅支持 Andorid v3.1.8及其以上版本,范围 0 - 255,且只有 type 为 1 或者 2 的时候才生效,不写或者填写 0 < 阈值 ≤ 255,则默认使用自动计算的阈值进行二值化
返回值 类型 说明
x,y number 找到的图片的左上角顶点坐标,如未找到则返回 -1,-1

脚本实例:
精确寻找指定区域中,指定图片的位置

  1. --寻找符合条件的图片(假设图片的背景颜色为白色)
  2. x, y = findImageInRegionFuzzy("test_alpha.png",90,0,0,320,480,0,12);
  3. if x ~= -1 and y ~= -1 then --如果在指定区域找到某图片符合条件
  4. touchDown(x, y); --那么单击该图片
  5. mSleep(30)
  6. touchUp(x, y);
  7. else --如果找不到符合条件的图片
  8. dialog("未找到符合条件的坐标!",0);
  9. end

注意事项:
1. 参数 type 为 1 需引擎版本 iOS v2.3.6-7 以上支持,type为 2 需要引擎版本 iOS v2.3.7 以上支持,type为 3 需要引擎版本 Android v3.1.8 以上支持。
2. 以下找图几种 type 方式:
type 为空 - RGB 找图,适用于静态画面,找图速度快,兼容性一般
type 为 1 - 二值化找图,适用于所有画面,找图速度慢,兼容性好
type 为 2 - 二值化找图,适用于静态画面,找图速度快,兼容性好
type 为 3 - 可以找多张图
3. Android 仅支持 png 格式图片。
4. iOS 默认图片路径为 /var/mobile/Media/TouchSprite/res,Android 为/mnt/sdcard/TouchSprite/res(参数中无需填写完整路径),自建目录请填写绝对路径。
5. 忽略的颜色值指将要寻找的图片的背景颜色,即在屏幕画面上不匹配寻找对象的背景颜色。
6. 若该函数找图不理想可使用findImage 高级区域找图或者cvFindImage 图中找图,几种找图方式可配合使用。
7. 为了防止 TSP 脚本中图片泄露,引擎版本 Android v3.1.7 、iOS v3.1.0 及其以上版本已支持对图片进行加密。
图片加密后运行 TSP 脚本图片将不会释放到 res 文件夹下,但是可以正常使用找图函数。
图片加密格式前缀:__encrypt__图片名称。
图片加密后找图函数中的将要寻找的图片文件名前缀也需要修改成加密格式前缀:__encrypt__图片名称,否则将找图失败。
修改图片前缀后需要重新打包加密后图片加密才会生效。
Android v3.1.7、iOS v3.1.0 以下版本无法使此加密方式,会出现找图失败的问题。

函数:imageBinaryzation 图片二值化(仅支持 Android)

函数功能:将指定图片进行二值化处理
引擎版本:仅支持 Android v3.1.8 及其以上版本
函数方法
ret = imageBinaryzation(picpath,value)

参数 类型 字段 说明
picpath string 必填 将要寻找的图片文件名(Android 仅支持 png 格式),绝对路径(不写路径)默认为 res 文件夹下,自建目录请填写相对路径
value number 选填 二值化阈值,范围 0 - 255,作为图像二值化的参照值。不写或者填写 0 < 阈值 ≤ 255,则默认使用自动计算的阈值进行二值化
参数 类型 说明
ret number 返回当前用的阈值

脚本实例:

  1. ret = imageBinaryzation("test.png",20)
  2. dialog(ret)

注意事项:
1. 二值化后的图片,保存路径默认和原图片路径一致,二值化图片名称为:图片名称_bin.png,如 如示例中的的图片二值化后的图片名称为 test_bin.png。
2. Android 仅支持 png 格式图片。
3. 绝对路径m默认为 /mnt/sdcard/TouchSprite/res(参数中无需填写完整路径),自建目录请填写相对路径。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注