跳到主要內容

[C#] 修改DPI Awareness,避免WinForm上的字體於Full HD螢幕上模糊

現在大多數電腦都已配備Full HD螢幕,但是以前開發的程式放到這些電腦上執行,卻發現表單畫面上的字體都糊掉了
此需加入app.manigest指定程式可針對不同DPI螢幕調整已獲得最好的字體表現




以Visual Studio Community 2015為例
1. 新增manifest file,其中已經有DPI Aware,移除comment

<!-- 表示應用程式為 DPI 感知,Windows 不會在 DPI 變高時自動
       調整。Windows Presentation Foundation (WPF) 應用程式會自動感知 DPI,因此不需要
       選擇加入。選擇加入這項設定之以 .NET Framework 4.6 為目標的 Windows Form 應用程式也
       應該在其 app.config 中將 'EnableWindowsFormsHighDpiAutoResizing' 設定為 'true'。-->
  <!--
  <application xmlns="urn:schemas-microsoft-com:asm.v3">
    <windowsSettings>
      <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
    </windowsSettings>
  </application>
  -->

2. 畫面呈現
修改前

修改後

張貼留言

這個網誌中的熱門文章

[遊記] 20160710 廈門 - 中山路步行街,鼓浪嶼

此次趁出差之便,於周末從廈門翔安區到島內搭船到鼓浪嶼來看看這素有海上花園之稱的地方


[遊記] 20160702 廈門 - 廈門大學、南普陀寺、SM城市廣場

工作這麼久還是第一次出差
問了別人周末要到哪邊,都先推先到廈門大學來看看