微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Win10正式版DPI缩放技术深度独家详解

了解Win10DPI技术之前,首先先来回顾下Windows XP以来采取过的DPI缩放技术。

传统DPI缩放机制

传统DPI缩放机制被Windows XP所采用,由开发者自行检查字体缩放后是否存在潜在的问题。

优点:字体清晰

缺点:排版错乱(UI元素文本框重叠、表格文字溢出、界面超越屏幕边缘)

现代DPI缩放机制:DPI虚拟化

现代DPI缩放机制被Windows Vista/Win7/Win8/Win8.1所采用。如果DPI缩放比例不超过125%,继续使用传统DPI缩放机制,超过之后就开启这个新模式。需要指出的是,125%缩放比例在多数情况并不会造成严重的界面错乱,而且缩放后字体清晰。

具体来说,对于报告支持DPI自适应的程序,系统将停用DPI缩放。

对于没有报告支持DPI自适应的程序,系统将采用如下机制:

缩放比例如果为100%的整数倍,系统采用一点对多点进行缩放。当选择缩放比例为200%/300%/...,原有界面中1点依次对应4点/9点...。

缩放比例如果为非100%的整数倍,系统首先给应用提交虚拟分辨率,然后由系统离屏渲染软件界面,再放大到用户选择的DPI级别上。

以1920*1080分辨率,缩放比例150%为例。系统首先向应用提交当前的分辨率为1280x720,获得离屏渲染的界面以后,再使用常规的图像插值算法进行放大。需要提醒的是,插值将不可避免的导致界面模糊,字体锯齿等一系列问题。

优点:界面正常

缺点:界面模糊

Win10 DPI缩放机制:完全的DPI虚拟化

Win10 DPI缩放机制绝大多数部分与现代DPI缩放机制一致,唯一不同是所有DPI级别(包括125%)均采用DPI虚拟化机制,保证界面正常。

▲左侧为Win10 DPI机制,右侧为Win8.1 DPI机制

最后简要介绍下MAC DPI缩放机制,Retina屏幕统一采用200% DPI缩放级别,实现原理和Windows没有任何区别。唯一的不同是,MAC OS X软件在显示视频和图像时,视频图像区域采用100% DPI,以保证视频和图片显示质量。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐