程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> Windows 7開發:高 DPI - 白皮書

Windows 7開發:高 DPI - 白皮書

編輯:關於.NET

高 DPI 應用程序

我們的最終用戶研究產生了一些令人吃驚的結果–只有約 55% 的用戶實際設置的是大分辨率 . 這表示,幾乎一半的用戶都沒有充分的展示完全保真的 優勢。研究結果列於下表 :

最大分辨率 用戶最大百分比 1280X1024 56% 1400X1050 79% 1600X1200 32% 1680X1050 66% 1920X1050 39% 1920X1200 78% 平均 55%

大部分用戶使用低分辨 率,因為他們發現在高分辨率下的文字比較小 . 不過 , 可以完全的減少分辨率所帶來的負 面影響 , 包括 :

• ClearType 不正確地呈現在非本地的分辨率

• 用戶無法看到全保真高清內容

• 高分辨率的照片,不能 呈現在保真度最高

為了提高文字的大小 , 鼓勵用戶增加 DPI 設置顯示在他們的高逼 真度的優勢 , , 而不是降低分辨率,受到負面影響 . 但是 , 雖然這解決了與高保真流失的 問題 , 應用程序在沒有 DPI 感知的情況下經常有一些不合適的效果 , 例如 :

• 裁剪文本 :

• WinForms 問題 :

• 像素 位圖 :

• 布局問題和圖片大小問題 :

• 模糊界面 :

• 字體大小不匹配 :

隨著 Windows 7 的發布 , 將更大程度的采用 高 DPI ,理由如下 :

• 更多的 OEM 廠商預計將開始銷售高 DPI 設置配置的筆記本電腦

• Windows 7 的清潔功能的設備安裝已預先配置為高 DPI

• 用戶界面的控制面板的高 DPI 是容易找到

下表提供了各種顯示分辨率和建議的 DPI 設置規范 .

描述    水平 垂直 寬 度 面板 DPI 操作系統 DPI 比例 17" WXGA+ 1440 900 17.0 100 96 100% 15.4" WXGA+ 1440 900 15.4 110 96 100% 15.4" WXGA 1280 768 15.4 97 96 100% 14.1" WXGA 1280 768 14.1 106 96 100% 13.3" WXGA 1280 768 13.3 112 96 100% 17" WUXGA 1920 1200 17.0 133 120 125% 17" WSXGA+ 1680 1050 17.0 117 120 125 % 15.4" WSXGA+ 1680 1050 15.4 129 120 125 % 14.1" WXGA+ 1440 900 14.1 120 96* 125% 13.3" WXGA+ 1440 900 13.3 127 96* 125% 12.1" WXGA 1280 768 12.1 123 96* 125% 15.4" WUXGA 1920 1200 15.4 147 144 150%

注 :  在產生一個有效的分辨率 1024x 768, 我們從來沒有配 置 DPI.

添加高 DPI 支持您的應用程序比以往更重要 .

解決方案

首先 , 保證您的計算機在高 DPI 模式 . 你可以這樣做,通過控制面板中的顯示設置 :

然 後 , 測試在高 DPI 環境中的應用 .

WinForm 的應用程序通常結構良好,只需要很少 的 UI 控件調整 . 有時候 , 您應該改變 "AutoScaleMode" 在您的表單從 " 字體 " 到 "DPI" 根據內容的形式 .

本機應用程序可能會遇到上述很多問題 . 首先 , 加入下列 清單,作為 DPI 應用感知 :

<assembly xmlns="urn:schemas-microsoft -com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft- com:asm.v3" >
  <asmv3:application>
     <asmv3:windowsSettings  xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
       <dpiAware>true</dpiAware>
     </asmv3:windowsSettings>
  </asmv3:application>
</assembly>

一旦聲明作為 DPI 應用感知 , 再運行它,看看它如何 再受變更影響 . 現在 , 地址問題一個接一個的使用 CDPI 類,直到 您的應用程序完全兼容 高 DPI.

總結

高 DPI 顯示具有更高的分辨率設置 , 默認設置越來越普遍 . 高 DPI 不注意會引起嚴重的 UI 問題 , 甚至可以影響到適當的應用程序功能 . 因此 , 你 的應用程序應該具有 DPI 感知能力,並在 DPI 感知的環境下測試 . 一定要所有的本地應用 程序 UI 元素根據 DPI 設置 . 在 WinForm 應用中 , 注意窗體的 "AutoScaleMode" 屬性 .

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved