大家好,我是公众号3分钟学堂的郭立员~
刚刚在群里和大家讨论透明图该怎么做,觉得这个知识点可以拿来讲一讲,首先我们要知道什么是透明图?
所谓透明其实就是“看不见”,就像现实生活的玻璃,如果擦的非常干净,我们就看不到玻璃,那么我们能看到是玻璃后面的东西,这个东西越清晰,说明我们的玻璃越干净越透明,这个后面东西就是透明的参照物,用来证明透明的存在。
那么电脑图片的透明该怎么表示(证明)呢?
在电脑中图片是没有真正意义上的透明,以ps软件为例,它的透明表示是灰白格,也就说如果看到图片中有灰白格,就是图片的透明区域。
我们再看部分透明,并不是半透明,一部分是灰白格,一部分不是灰白格。我们不讲半透明,只讲全透明和不透明
再来看看按键精灵的透明表示方式:
按键的透明并不是灰白格,而是四个角点是相同颜色,那么所有这个颜色都是透明点,如下图所示。
四个角点都是红色,那么图片上所有红色都是透明的,透明色是变化的,只要四个角点的颜色是一样的,那么这个颜色就是透明的
再来说说透明图有什么用?
我个人觉得没啥用,但是既然有人问,又有很多老师在讲,那么我们就说说它有啥用。
举个例子,相同文字在不同背景上显示,比如游戏中的某些文字,由于游戏场景的变化,导致文字的背景、文字的间隙中颜色都是变化的,所以直接找图找不到,从而想到做透明图。
这个透明图就是把游戏背景图做成透明的,只保留文字部分,这样无论背景怎么变化都能找到文字,这么一来,透明图就增加了找图的识别率。
那么找透明图识别率高的原理是什么呢?
我们普通找图时,按键是要比对截图的每一个像素点,只有所有颜色都比对成功才算找到图,如果做成透明图就只是比对非透明部分,至于透明部分无需比对。
我们把文字以外的部分都涂成红色,以代表透明区域。
为了验证透明图到底好不好用,我们做个测试,找微信这两个字。
测试1:透明图是否能找到图,屏幕画面如下图:
测试方式是分别用找图命令,找透明图和不透明图,测试结果如下:
可以看到透明和不透明的图片,都可以找到,证明找图命令支持透明图。
测试2:更换桌面背景,看透明图能否找到。
代码还是同时测试透明图和不透明图
测试结果发现只有透明图能够找到。
通过测试我们确实可以发现透明图比不透明图的识别率高,因为截图中透明部分的像素点,在找图命令运行过程中,是不用比对颜色的,所以即便颜色差异很大,也没有关系。
同时我在测试时,还发现透明图比不透明图在找图速度上要略快一些,这是因为透明图的透明区域不用比对颜色,这就节省了时间。
就像这个图,红色部分都不用比对颜色,只比对白色部分,自然比对的速度就快了。
同时也解释了,为啥透明图的识别率高,因为红色部分不比对颜色,那么即便不一样,也不影响找图,我们只看白色部分一不一样。
找透明图的优缺点:
优点:提高找图的识别率,提高了找图速度
缺点:做透明图太麻烦
为啥我不推荐呢,找透明图本质上就是“跳跃比色”,就是比对特点位置(非透明)的颜色,这不就是我们按键当中的多点找色命令吗,有省事的方法为啥不用呢?
好了内容就这些,觉得还行帮忙给文章点个赞。
=正文完=