Alpha Blending and Alpha Channel on Windows Mobile

简介:

 2007年的时候,Alex在《Compelling UI's in NetCF anybody?》一文中,讲述了windows mobile 5平台上如何利用AlphaBlend做很酷的透明图片界面。前不久的webcast24 Hours of Windows Mobile Application Development: Creating Compelling and Attractive UIs for Windows Mobile Applications》上,他讲述了目前windows mobile界面设计的趋势,其中也涉及到了Alpha Blending 和 Alpha Channel技术。下面对这两个概念进行解释。

    在百科全书wiki上,我们可以找到这个Alpha compositing的解释。在计算机图形学中,alpha compositing是一种结合图片和背景来创造部分透明效果的技术。Alpha Channel最早是由A. R. Smith20世纪70年代提出来,最终由Thomas PorterTom Duff1984年发展成熟。简单来说,传统的一个像素的颜色是用RGB来表示的,而在Alpha Channel中,需要加上第四个参数,如(0.0, 0.5, 0.0, 0.5)中,前面的三个参数“0.0, 0.5, 0.0”表示RGB,而第四个参数0.5表示Alpha。因此,在Thomas PorterTom Duff的论文中,他们利用Alpha值,定义了两张图片合成的5种运算(over,in,out,atop,xor),效果可以参考下图1

图15种运算效果图(图片摘自Alpha compositing

    目前,支持Alpha Blending的操作系统/GUI包括以下几种:

    从windows mobile 5.0开始,平台就已经支持Alpha Blending的本地调用了。在http://code.msdn.microsoft.com/uiframework这个课程代码中,我们可以看到,在工程中,他采用了P/Invoke

Code

 

    封装了DrawAlpha这个方法:

Code

 

    最后,作者给出了这个方法的应用,在桌面上显示天气的UI和图片的Slide Show。同时,可以使用下面的代码来隐藏title bar,并全屏显示应用程序。

Code

 

    另外,作者还给出了按钮浮起和按下状态的颜色变化处理,以及text 文本嵌入的处理,大家有需要的话,可以下载过来参考一下。

    最终的显示效果如下图2所示:

图2:程序UI效果

    下图是Location平常状态与被按下时的对比:

图3:按钮的不同效果

参考链接:

AlexCompelling UI's in NetCF anybody?

MSDNAlphaBlend

Webcast24 Hours of Windows Mobile Application Development: Creating Compelling and Attractive UIs for Windows Mobile Applications

WikiAlpha compositing


本文转自施炯博客园博客,原文链接:http://www.cnblogs.com/dearsj001/archive/2009/03/05/1403991.html,如需转载请自行联系原作者

相关文章
|
3月前
|
开发框架 JavaScript .NET
【Azure 应用服务】Azure Mobile App (NodeJS) 的服务端部署在App Service for Windows中出现404 Not Found
【Azure 应用服务】Azure Mobile App (NodeJS) 的服务端部署在App Service for Windows中出现404 Not Found
|
Windows 网络协议
Windows Mobile远程控制软件Pocket Controller Pro简介
不仅PPC/WindowsMobile系统可以使用该控制软件,只要是WINCE内核的系统都可以使用,我在WinCE.net 4.2系统测试通过,只不过640*480的分辨率,控制速度不是那么理想。
968 0
|
数据格式 XML Windows
Windows Mobile 5.0编程—奥运场馆速查
我忙里偷闲,用VS2005开发了一个关于奥运场馆的小程序,时值2008北京奥运前夕,也算是为奥运做了“贡献”
693 0
|
Windows Web App开发 API
UWP 判断windows mobile是使用的实体键还是虚拟按键
原文:UWP 判断windows mobile是使用的实体键还是虚拟按键 最近在写启动屏幕,发现虚拟按钮会挡住,启动屏幕的最下面的元素,大概有50 px。可是有什么办法知道手机是用的实体键还是虚拟按键吗? 如下图。
1155 0