Win7/Win8/Win10系統(tǒng)DPI縮放技術(shù)獨(dú)家詳解

2015/8/6 10:49:37    編輯:軟媒 - Star2011     字體:【

Win7之家m.airtaxifl.com):Win7/Win8/Win10系統(tǒng)DPI縮放技術(shù)獨(dú)家詳解

了解Win10 DPI技術(shù)之前,首先先來回顧下Windows XP以來采取過的DPI縮放技術(shù)。

傳統(tǒng)DPI縮放機(jī)制

傳統(tǒng)DPI縮放機(jī)制被Windows XP所采用,由開發(fā)者自行檢查字體縮放后是否存在潛在的問題。

優(yōu)點(diǎn):字體清晰

缺點(diǎn):排版錯(cuò)亂(UI元素文本框重疊、表格文字溢出、界面超越屏幕邊緣)

現(xiàn)代DPI縮放機(jī)制:DPI虛擬化

現(xiàn)代DPI縮放機(jī)制被Windows Vista/Win7/Win8/Win8.1所采用。如果DPI縮放比例不超過125%,繼續(xù)使用傳統(tǒng)DPI縮放機(jī)制,超過之后就開啟這個(gè)新模式。需要指出的是,125%縮放比例在多數(shù)情況并不會(huì)造成嚴(yán)重的界面錯(cuò)亂,而且縮放后字體清晰。

具體來說,對于報(bào)告支持DPI自適應(yīng)的程序,系統(tǒng)將停用DPI縮放。

對于沒有報(bào)告支持DPI自適應(yīng)的程序,系統(tǒng)將采用如下機(jī)制:

縮放比例如果為100%的整數(shù)倍,系統(tǒng)采用一點(diǎn)對多點(diǎn)進(jìn)行縮放。當(dāng)選擇縮放比例為200%/300%/...,原有界面中1點(diǎn)依次對應(yīng)4點(diǎn)/9點(diǎn)...。

縮放比例如果為非100%的整數(shù)倍,系統(tǒng)首先給應(yīng)用提交虛擬分辨率,然后由系統(tǒng)離屏渲染軟件界面,再放大到用戶選擇的DPI級(jí)別上。

以1920*1080分辨率,縮放比例150%為例。系統(tǒng)首先向應(yīng)用提交當(dāng)前的分辨率為1280x720,獲得離屏渲染的界面以后,再使用常規(guī)的圖像插值算法進(jìn)行放大。需要提醒的是,插值將不可避免的導(dǎo)致界面模糊,字體鋸齒等一系列問題。

優(yōu)點(diǎn):界面正常

缺點(diǎn):界面模糊

Win10 DPI縮放機(jī)制:完全的DPI虛擬化

Win10 DPI縮放機(jī)制絕大多數(shù)部分與現(xiàn)代DPI縮放機(jī)制一致,唯一不同是所有DPI級(jí)別(包括125%)均采用DPI虛擬化機(jī)制,保證界面正常。

▲左側(cè)為Win10 DPI機(jī)制,右側(cè)為Win8.1 DPI機(jī)制

最后簡要介紹下MAC DPI縮放機(jī)制,Retina屏幕統(tǒng)一采用200% DPI縮放級(jí)別,實(shí)現(xiàn)原理和Windows沒有任何區(qū)別。唯一的不同是,MAC OS X軟件在顯示視頻和圖像時(shí),視頻圖像區(qū)域采用100% DPI,以保證視頻和圖片的顯示質(zhì)量。

如果你在Win10中調(diào)整DPI縮放后部分系統(tǒng)窗口字體出現(xiàn)模糊現(xiàn)象,可參考《Win10高分屏更改DPI后字體模糊?試試這個(gè)小工具》來解決。

本文出自IT圈 - Win10圈,作者Star2011,原文《獨(dú)家:詳解Windows 10 DPI 技術(shù)》。

玩轉(zhuǎn)Win10,盡在IT之家Win10特別專題>>