SP4 的桌面程序如何適應擴展顯示器的DPI?

之前有過這個問題

如何在 Windows 8.1 中在擴展顯示器模式下針對不同的顯示器設置不同的 DPI? - Surface Pro 3

@陳凱捷 說:

目前沒有發現辦法解決,只能把外接顯示器設為100%,然後sp3這裡只開metroapp,metroapp里的字體還是正常的,不要切到桌面。」

我現在SP4 WIN10下面,如果開機後外接1080p顯示器(已經調整至100%),那麼桌面程序在SP4屏幕上正常,但在外接顯示器上菜單變得特別大,如下圖

如果外接顯示器開機,那麼外接顯示器就顯示正常,但是拖到SP4上,菜單就變得特別小。如下圖。

我知道metro應用是可以拖來拖去,自動適應,那麼桌面應用可以嗎?這樣實在太難受了。

補充一下,我用的是最新的擴展塢,然後用dp轉VGA的線連公司的顯示器。


Win8.1時代桌面應用便支持擺放到不同DPI屏幕時動態切換渲染尺寸,是極其簡單的一個消息和幾個API(譬如說你的App當中每一個窗口大部分在哪個屏幕上),但是連Office都沒有去好好支持。

我自己在微軟內部寫的一個工具完美地支持了這個特性,我很想把這一部分分享出來(其實真的很簡單,WPF本身的渲染只需要做個變換;圖標等要在變換的同時通知所有界面上的點陣圖重置資源)然而我目前遇到了一些困難,暫時無法繼續這件事情…

這篇文章介紹了此特性的效果,然而沒有把做法說的很清楚。當然做法並不難,想做的人一定能搞定的。

https://blogs.windows.com/windowsexperience/2013/07/15/windows-8-1-dpi-scaling-enhancements/


目前暫時是無解的,這是傳統Win32應用都有的硬傷,即主屏幕正確縮放渲染,其它屏幕按比例來放大縮小(模糊。)

所以最好的辦法是等或者換uwp…


瀉藥。

你恰好舉了一個非常典型的例子:Office Win32應用在DPI不同的兩個屏幕縮放的問題。

首先告訴你這個問題會是RedStone主力要解決的一個問題,但是解決起來比想像的要複雜的多,尤其是像Office這樣本身已經按照Win8的API做了DPI敏感設置但同時又存在一個進程多窗口的情況。

其次給你一個目前的解決方法:將外接顯示器設置為100%DPI縮放之後,再需要將外接顯示器設置為主顯示器。這樣外接顯示器的DPI縮放就會變成系統級別的設置,此時Office就會根據這個變數進行進一步計算從而得出正確的結果。

然而這不是終極解決方案,在對於不同情況對於DPI Aware API支持不同的程序會有各種奇葩的組合存在,所以出現其它的異常也是很有可能的。等Redstone吧,估計加入新DPI Scaling API的預覽版應該不會很遠了。


說起DPI技術來,微軟可以說他不知高到哪裡去,但探究根源作用不大。

現狀:

1、兩個顯示屏採用相同的100%的DPI縮放比例 = UI都不模糊 = 高分屏UI元素會變得很小

(e.g. DPI#1 = DPI#2 = 100%)

2、兩個顯示屏採用不同的、各相匹配的DPI縮放比例 = 至少一個屏幕里的UI會模糊 = UI元素大小各自匹配

(e.g. DPI#1 = 200%,DPI#2 = 100%)

3、兩個顯示屏採用相同的、折中的DPI縮放比例 = 至少一個屏幕里的UI會模糊 = UI元素大小一個略小(高分)一個略大(低分)

(e.g. DPI#1 = DPI#2 = 150%)

建議:

1、單獨使用外置顯示器。

2、在上述三個方案中選個順眼的。

3、換PPI接近的顯示器,2k/3k/4k/5k

4、換Mac


被同樣的問題折磨到痛不欲生。

SP4(沒錯,我已經從SP3用戶變成SP4用戶了)設置200%放縮,擴展顯示器(DELL 1080P解析度)設置為100%放縮,SP4屏幕一切正常,大小十分合適,但擴展顯示器……用Edge可以,用Chrome簡直大到沒法看,也給200%放大了,那特么系統放縮這個100%的設置有毛用啊?再說Office,Excel、Word、Outlook、Onenote,連Visio都OK,在擴展顯示器上100%顯示,但PPT不行,跟Chrome一個德行,弄成200%了。

總結:此問題無解了,從Windows 8等到Windows 10也沒給解決,微軟就是個吃屎的貨。

---------------------2016-7-19補充---------------------

上了4K顯示器,一根DP線連接,兩塊屏都用200%的DPI,我了個去,整個世界安逸了。針對此問題糾結的同學,建議直接上4K顯示器做外接即可解決,別的方案別折騰了,費時間費精力費眼睛。

BUT,又出現一個匪夷所思的問題是,Chrome在擴展屏上最小化,然後再點任務欄圖標出來的時候會自動跑到Pro4的屏幕上去最大化呈現,完全沒想明白是為什麼。


我跟你們用的office2016+win10不是一個版本嗎?外接1080p顯示器,dpi縮放100%,主顯示器是surface lcd,縮放200%,應用來回切換,縮放正常啊,我測試了下,不僅office,notepad、powershell、explorer、chrome在2個顯示器上切換的時候縮放都正常


遇到過類似的問題,SP4DPI縮放調到200%,外接顯示器調到100%,效果應該會好一些


推薦閱讀:

Surface 3 沒有任何造勢行動,卻迅速引起巨大轟動,這是基於怎樣的營銷模式?
surface升級win10後手指觸控偶爾變成右鍵?
如何評價 Windows 10 Pro for Workstation?
升級了WINDOWS10有什麼好玩的使用技巧?
為什麼微軟採用「你好,小娜」作為喚醒語的翻譯?

TAG:MicrosoftSurface | 外接顯示器 | Windows10 | SurfacePro4 |