Windows 8 針對多樣化硬體形態 (平板、筆電、桌機、一體機)、多種螢幕規格 (尺寸、解析度、DPI、長寬比),建立系統級適應架構。本文整理 Building Windows 8 部落客核心技術白皮書要點。
分類三維度
- 螢幕尺寸:7" ~ 30"+ (對角線)
- 解析度:1024x768 ~ 2560x1600+
- 像素密度 (DPI):標準 ~ 視網膜級 (250+ DPI)
解析度門檻設計哲學
| 門檻 | 解析度 | 用途 | 設計理由 |
| 最低 | 1024x768 | Metro App 基本運行 | 版面完整性、Web 基準、僅 1.2% 用戶更低 |
| 完整功能 | 1366x768 | Snap 併排多工 | 320px 側欄 + 1024px 主區 |
| 最高 | 無限制 | 大螢幕/高 DPI | 空間越大越好,應用不被截斷 |
為何強制最低解析度而非建議值?
- 降低開發者測試矩陣:無需適配 800x600 等邊緣規格
- 避免開發者以最低規格為基準開發,導致主流裝置體驗退化
- 確保 Metro 設計語言 (留白、字體階層、觸控目標) 完整呈現
自適應版面技術棧
- ViewBox / Viewport:邏輯座標映射實體像素
- VisualStateManager:定義斷點 (Breakpoints) 觸發版面重排
- Grid/VariableSizedWrapGrid:流式容器自動換行/換行
- ResolutionScale:查詢當前縮放因子 (1.0/1.4/1.8) 載入對應資源
DPI 縮放實作細節
- 系統偵測螢幕物理尺寸 + 解析度 → 計算 DPI
- 對應三級預定縮放:100% (標準)、140% (HD)、180% (Quad-XGA)
- UI 元素以 獨立像素 (DIP/有效像素) 佈局,實際渲染像素 = DIP × 縮放因子
- 文字/向量圖形:即時光柵化,銳度完美
- 位圖資源:依
.scale-100/140/180 命名慣例自動載入對應解析度版本
- 結果:高 DPI 裝置上物理尺寸不變、銳度提升、觸控目標符合人因標準
避免大螢幕留白:固定尺寸應用策略
- 不強迫所有應用全螢幕/填滿空間
- 應用可宣告 最大寬度/最佳寬度,系統置中顯示、兩側留白
- 類比網頁設計:內容區固定 960px/1200px 置中,背景延伸
- 開發者可選擇 流式版面 (利用額外空間) 或 固定版面 (保持比例)
開發者驗證清單
- 在 1366x768 (含 Snap 320px) 驗證基本版面
- 在 1920x1080 (140% 縮放) 驗證高清版面與資源載入
- 在 2560x1440 (180% 縮放) 驗證視網膜級銳度與觸控目標
- 在 1366x768 直向/橫向 驗證旋轉重排
- 使用 Visual Studio Simulator 批次模擬上述場景
- 實體裝置測試:至少一台標準、一台高 DPI 裝置
Windows 8 的螢幕支援架構核心邏輯:以獨立像素為設計單位、預定三級縮放因子、流式版面配合斷點重排、資源多解析度封裝。此架構直接延續至 Windows 10/11,並擴展為每 25% 一級縮放 (100/125/150/175/200/225/250/300/350/400/450/500%) 以支援更細緻的硬體多樣性。