按键精灵安卓版怎么做透明图
admin
2023-06-25 16:56:02


这一期我们来学一下如何用按键实现图片旋转和图片缩小,这两个功能可能在对接打码平台时会用到。


讲这个之前需要强调一点,以下代码都是在安卓app3.3.8版本使用。


按键精灵安卓版怎么做透明图图1



按键精灵手机助手上面的命令是:


按键精灵安卓版怎么做透明图图2


如果你的版本比较低,可能没有这些功能,自行升级版本。


这个Image 图像命令组涉及到一个知识点,以前没有用到过。


知识点:【图像数据】


那么什么是图像数据,它的格式是什么样的呢?


我们用一个命令演示一下:


按键精灵安卓版怎么做透明图图3


我们先来“获取指定屏幕范围内图像数据 ”,这个命令有4个参数,查找区域的4个坐标值,和我们截图命令、找图命令的坐标范围是完全一样的。那么这个命令的重点是什么呢?它的返回值,以键值表形式返回所有颜色数据。


对于一个陌生的键值表,我们怎么知道它的格式呢?我来教大家一个方法:


“把键值表转成json”,然后用traceprint调试输出json。


下面看一下这个命令返回值的键值表格式:


Dim PixelData = Image.GetScreenData(0,0,5,5)Dim json=encode.TableToJson(PixelData)TracePrint json


返回值:


当前脚本第3行:[[[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59]],[[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59]],[[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59]],[[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59]],[[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59]],[[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59],[225,131,59]]]


把返回值用在线格式化工具处理一下:


[ [ [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59] ], [ [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59] ], [ [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59] ], [ [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59] ], [ [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59] ], [ [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59], [225, 131, 59] ]]


通过处理完的格式,可以看出返回值是三维数组。


数组的最大下标:三维数组(5,5,2)


搞清楚了这个以后,我们就开始今天的主题了。


(一)图片旋转(顺时针90度)。


Dim Path1 = "/sdcard/pictures/1.jpg"Dim Path2 = "/sdcard/pictures/2.jpg"Dim PixelData = Image.SetRotation(Path1, 90) Image.SavePixelData(PixelData, Path2)


图片旋转的逻辑是这样的:


①读取图片数据

②顺时针旋转90度对应的数据替换


按键精灵安卓版怎么做透明图图4

③把图像数据生成图片



(二)图片的缩小


有时候由于手机的分辨率很大,截图得到的图片超过了打码平台要求的图片尺寸大小,导致无法上传。


下面我们说一下缩小图片的思路:假设我们缩小n倍。


①获取原图的图像数据

②每隔n个位置从图像数据中提取一个数据,组成新的图像数据,得到数据是原来的n分之一。

③把新的图像数据生成图片


代码如下:


Dim Path = "/sdcard/pictures/f.jpg"Dim NewPath = "/sdcard/pictures/f1.jpg"dim PicSize = Image.Size(Path)Dim x=PicSize[1]Dim y=PicSize[2]Dim n=5 //缩放倍数Dim PixelData =Image.GetPicData(Path)Dim NewPixelData= Image.GetScreenData(1,1,int(x/n),int(y/n))For j = 1 To int(x/n) For i = 1 To int(y/n) For k = 1 To 3 NewPixelData[j][i][k]=PixelData[j*5][i*5][k] Next NextNextImage.SavePixelData NewPixelData, NewPath


效果展示:


按键精灵安卓版怎么做透明图图5


代码里面有个缩放倍数变量,你可以直接修改成你需要的倍数,原本想把截图缩放也写一下,后来想想,那不就是先截图保存下来,然后在把图片缩放吗,原理都一样,就没必要写了。

相关内容

热门资讯

猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...