重绘
重绘也是一样,有些时候我们需要绘制屏幕或控件,需要计算不同的分辨率。如果我们开发了一个自定义控件,那么它或许可以工作在像素环境下,但是我们需要使用system metrics来避免分辨率的问题,如果我们在绘制一个复杂的图形可以使用SetMapMode来使用图形缩放引擎。

GDI+
GDI+是微软下一代的2D图形解决方案,是对GDI的增强和延续,GDI+提供了在高分辨率的解决方案,比如说线性的文本缩放,和平滑图片、缩放功能都被很好的改善,GDI+提供了许多针对速度和质量等方面图片缩放的运算规则,但是相比较GDIStretchBlt的而言,对于小图像InterpolationModeBilinear更快速质量也不错,对于会有一些质量问题,所以使用GDI+提供的 InterpolationModeHighQuanlityBicubic是个不错的选择。

图片和图形的真实感增强 Office XP采用改进的图形系统 (GDI+),使用该图形系统,图形和艺术字将具有更平滑的轮廓以及可调整的用真实颜色调和的透明度级别。在调整图片大小时,图片的显示将更加清晰。

另外GDI+ 围绕分辨率的问题还提供了(Image::GetPhysicalDimension和Bitmap::SetResolution)这样的函数,可以使用这些信息来恰当的缩放图片,或者可以让GDI+去作这些,如果在调用 Graphics::DrawImage的时候没有指定一个高度和宽度,GDI+也会根据屏幕分辨率来计算图像分辨率。
如何测试高分辨率下的应用程序是否有问题? 改变下面系统对于分辨率的设置:
在windows上点击右键 点击“属性” 打开“设置”Tab标签然后点击“高级” 在“常规”标签, 在字体尺寸框中改变的系统 DPI 重启系统 在检测应用程序外观的时候要特别注意以下检测要点:
文本和给予的空间(控件或容器)不匹配 文本和控件重叠或不恰当的间隔 文本和图片太小(不可用或不可视) 图像尺寸是恰当的,但是因为缩放导致质量非常低 线条太细不容易看到(因为在200dpi下,一个一个像素的线条几乎不可见) 最好在一些不同的DPI下测试的应用程序,因为一些显示器厂商在精确度方面会有些许的不同,在96、120、135、170、200下都进行一些测试。
Steven.Liu先生是ChinaHCI.Org以及Steven.Liu Usability Research and GUI Design Team的创始人,美国ACM SIGCHI以及UPA(易用性专家协会)成员,具有丰富的行业背景和嵌入式系统易用性设计经验,曾经服务于国内最大的城市信息化公司CAPINFO并担任多个重要项目的项目经理职务,在Windows-based、KIOSK UI、Web-based等方面有丰富的设计分析经验和见解,成功案例如“数字北京信息亭”KIOSK的用户战略分析和易用性工程的实施工作、点击科技公司GK R10系列协同产品用户体验的总体设计、UI Standard制订和监督执行等。
ui花园版权所有,经许可转载 英文原本地址点击
出处:UI花园
责任编辑:moby
上一页 高分辨率下界面布局的解决方案 [3] 下一页
|