GDI 繪圖使用邏輯單位,透過映射模式轉換為裝置座標(像素)。映射模式決定邏輯單位大小,可為裝置單位、實體單位(毫米)或自訂單位,是實現「所見即所得」的基礎。
xViewport = (xWindow - xWinOrg) * (xViewExt / xWinExt) + xViewOrgyViewport = (yWindow - yWinOrg) * (yViewExt / yWinExt) + yViewOrgDPtoLP/LPtoDP 函數雙向轉換。| 模式 | 邏輯單位 | Y 軸方向 | 用途 |
|---|---|---|---|
| MM_HIMETRIC | 0.01 mm | 向上增 | 高精度繪圖 |
| MM_TWIPS | 1/1440 吋 | 向上增 | 排版、列印 |
| MM_HIENGLISH | 0.001 吋 | 向上增 | 工程繪圖 |
| MM_LOMETRIC | 0.1 mm | 向上增 | 公制繪圖 |
| MM_LOENGLISH | 0.01 吋 | 向上增 | 英制繪圖 |
SetMapMode、SetWindowExt/SetViewportExt 正確設定,列印時裝置解析度不同需重新計算。MM_ANISOTROPIC 或 MM_ISOTROPIC 搭配 SetWindowExtEx/SetViewportExtEx 彈性控制比例與比例鎖定。掌握映射模式是精確繪圖與列印的關鍵。