首页 > 知识库 > 正文

MSAA怎么念 MSAA意思详解

MSAA是MultiSampling Anti-Aliasing的英文缩写,指多重采样抗锯齿,原理是寻找出物体边缘部分的像素,然后再把画缩放到当前的显示器上。基本信息 中文名:MSAA

原理

MSAA是“多重采样抗锯齿”,可以使画面更加平滑。

超级采样抗锯齿(Super Sampling Anti-Aliasing)的原理是把当前分辨率成倍提高,然后再把画缩放到当前的显示器上。这样的做法实际上就是在显示尺寸不变的情况提高分辨率,让单个像素变得极小,这样就能够大幅减轻画面的锯齿感了。不过是由于对整个显示画面的放大,因此它消耗的显示资源也是非常大的。不过MSAA是寻找出物体边缘部分的像素,然后对它们进行缩放处理。由于只是物体的外层像素进行缩放处理,忽略掉了不会产生锯齿的内部像素,所以显卡不会像处理SSAA(超级采样抗锯齿)那样需要庞大的计算量,因此MSAA比起SSAA来更有效。

Microsoft Active Accessibility

MSAA的全称是Microsoft Active Accessibility。这是类似DCOM技术。技术模型是这样的,UI程序可以暴露出一个Interface,方便另一个程序对其进行控制。 MSAA技术的初衷是为了方便残疾人使用Windows 程序。比如盲人看不到窗口,但是盲人可以通过一个USB读屏器连接到电脑上, 读屏器通过UI程序暴露出来的这个Interface,就可以获取程序信息,通过盲文或者其它形式传递给盲人。MSAA提供了如此方便的功能, UI自动化测试自然可以借用这项技术。MSAA暴露出来的Interface叫做 IAccessible。测试程序和目标UI程序互操作流程如下:

1. 测试程序调用Windows API: AccessibleObjectFromWindow,传入目标UI程序HWND。

2. AccessibleObjectFromWindow函数向UI程序发送WM_GETOBJECT消息。

3. UI程序创建实现了IAccessible的内部类,然后通过LresultFromObject API把IAccessible 接口返回给测试程序。

4. 测试程序拿到IAccessible接口,开始调用IAccessible接口函数操作测试目标。

IAccessible接口里面的几个关键函数是:

IAccessible::get_accChild/ IAccessible::get_accParent通过这两个函数,调用者可以浏览目标程序的窗口关系树,定位到UI元素。

IAccessible::accLocation/I Accessible::accHitTest读取和分辨目标元素的屏幕位置。

IAccessible::accName/ I Accessible:: accSelect读取元素的名字,对UI元素进行指定的操作,比如选取Listbox里面的某一项等等。

IAccessible::accValue 开发人员可以自定义value属性的实现。比如针对折线图控件,开发人员可以在accValue中返回折线的坐标数列。

MSAA的理念 类似于test hook。 通过主动让UI程序暴露一个接口来让调用者控制。 在具体使用中,测试人员往往是结合MSAA和Win32 API操作,取长补短。一方面对于UI元素丰富的属性,比如style,钩选状态,是否最大化和模拟用户输入等,继续采用Win32 API。 另一方面用MSAA的优势来弥补Win32 API的一些不足,比如:

由于MSAA有自己的get_accChild方法,使其控件树关系并不一定要和Win32 HWNDd关系对应一致。对于自绘窗口,虽然说只有一个HWND, 但是开发人员可以通过实现IAccessible接口来实现逻辑上的层次关系。比如Excel中就可以通过IAccessible把多个cell的子 IAccessible接口暴露给调用者。

IAccessible的实现是由开发者提供, 开发者可以灵活地根据实际情况决定方法的实现。比如前面提到了折线图控件可以返回坐标数列。对于.NET WinForm, 微软在Framework中就提供了IAccessible的默认实现,这样在具体实现中,就可以处理.NET动态维护HWND的细节。

声明:本网内容收集自互联网,旨在传播知识仅供参考,不代表本网赞同其观点,文字及图片版权归原网站所有。

更多精彩内容推荐:

雄安新区周边的地区,谁最有发展潜力?

你最看好哪做城市,有人说是保定。...

你见过最性感的女人是什么样子?

先谈谈性感的"性",性,是异性,指男女,性欲是指异性之间七情六欲,首先自己要有一个完美的性,才能感受到上天赋予的欲,你如果象太监一样,那你面前再怎么性感的人舞姿弄首,你也会无动于衷,对牛弹琴。另外,还有一个崇拜心里,那便是这个异性在你心目中,大气,得体,有正义感,妩媚,这无形中又...

长期用枸杞泡水喝,能养肾吗?

枸杞泡水喝能滋补养肾吗?...

“三一重工”为什么离开湖南?

是因为中联重科排挤吗?...

领导说“辛苦了”该怎么回?低情商才说不辛苦,怎么回才显情商高?

跟领导平时的交流应答,能够体现一个人职场上的情商高低。好的表达能力确实可以让自己在职场上增色不少,至少可以让领导知道你是一个懂事的人。大多数情况下,领导对员工说“辛苦了”不过是一种情境式客套,属于领导行为的一种激励方式而已。这种对答其实并没有想象中的那么庄重,我觉得没必要搞得像高...

孙正义的商业帝国有多大?

孙正义最成功的一笔投资,当然就是阿里巴巴,当年他向阿里巴巴注资2000万美元,最后换来了240亿美金的回报,成为一段佳话,但是除了投资阿里巴巴,孙正义的商业帝国究竟还有哪些呢?下面带大家一起揭开孙正义商业帝国的神秘面纱:孙正义的商业帝国孙正义的祖籍在中国福建莆田(也有很多人说是在...

皮蛋对身体有害吗?

很喜欢吃皮蛋,几乎每天都要吃一个,这种食物对身体有害吗?...

“郑许一体化”会给许昌带来怎样的发展前景?

感谢邀请,郑许一体化在2018年已经作为一个重点项目来推进建设,它也是未来郑州大都市区的一部分,将来会使许昌与郑州靠的更近,势必让许昌经济发展的更好,这几年许昌也有很多表现来印证了这个政策下带来的变化。第一、许昌产业更加集聚,城市发展速度加快。许昌在向北推进中首先是撤许昌县划为建...

清远长隆是不是骗局?

在清远长隆最初动工的时候,我听到的消息---包括长隆内部员工---所说的是:在清远长隆完工后,广州番禺长隆的野生动物园部分将取消,其功能将由清远长隆代替,而原长隆动物园地块,将转型为新奇特互动项目为主的旅游项目。这其实是一个非常符合内在逻辑的想法。对于广州和清远的经济发展,还有长...

周口高铁什么时候通车?

感谢邀请,我在周口工作做通信,俗话说高铁未到,通信先行。郑合高铁周口段的基站补点前期勘察工作,已经在去年上半年完成,现在也正在施工中,预计今年上半年完成补点。郑合和郑万高铁河南段也将在2019年10月1号前通车,共同献礼祖国70周年生日。郑合高铁的建设可以说为周口带来了一条重要血...

你看过最性感的电影是什么?

有最恐怖的,最唯美的,最劲爆的,有最性感的电影吗?...

老婆身材好是什么体验?

第一: 增加自己的优越感,带出去这么好的老婆,在朋友面前也可以好好的牛逼一下,让他们真真的羡慕你一把。第二: 费钱,真的很费钱,既然身材有料就不想浪费啊。所以有新的时装上市,都想为其买来上身,让其更加漂亮和时尚。第三: 偶尔也很生气啊,穿的那么漂亮,带出去自己都害怕。路人那么多的...

每天喝牛奶的人和从来不喝牛奶的人,在体质上有差距吗?

牛奶,一种很普通但非常有营养的饮品,作为一种动物性饮品,一直以来受到大多数人的青睐,常喝牛奶的人和不喝牛奶的人比起来有何不同,其实差别主要表现在骨骼的健壮程度以及对于外界疾病或者不良因素的抵抗能力上;当然还要因人而异,因为就算很多人不喝牛奶,可能还会从其他动物性食品当中获取优质蛋...

36岁男子肾衰入院,尿酸高达720,医生说:都是2种“水”喝多了,说的是什么水?

高尿酸,被称为“第四高”,不但会诱发痛风,更会损害肾脏健康。然而,大部分高尿酸者,没有明显不适症状,但对肾脏损害巨大,往往被忽视了。36岁的李先生,就是因为忽视了尿酸高,才导致了突发肾衰竭。李先生,腰痛严重,排不出尿,突然晕倒,被爱人立刻往往医院。经过一些列的检查,发现李先生尿酸...

肛门发痒是怎么回事?

长虫了吗?...

M开头单词英文单词英语星星也有泪2018加油q2588576zengtao7h1210122jetniunew
猜你喜欢
热门推荐
今日推荐 更多
猜你喜欢