WPF 4文字模糊不清晰解決方法

在窗口或控件上設置字體屬性就可以了,如下:

<usercontrol p="" <="" x:class="OPClient.PlatformManage.UserControlProxy">

以下是代碼片段:
<UserControl x:Class="OPClient.PlatformManage.UserControlProxy" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
mc:Ignorable="d" 
d:DesignHeight="400" d:DesignWidth="800" 
FontFamily="NSimSun" FontSize="14" TextOptions.TextFormattingMode="Display">

  參考:

  WPF4字體改善

  WPF4對字體渲染做了很大的改善,增加了TextOptions屬性,該屬性可以設置TextFormattingMode,TextRenderingMode,TextHintingMode

  1.TextFormattingMode

  它提供了兩種設置:

  · Ideal —— WPF4之前的模式

  · Display —— 新的模式,可以使字體顯示更清晰

  (一般將TextFormattingMode設置爲Display,可以提高字體顯示的清晰度)

  2.TextRenderingMode

  設置渲染模式,可以有以下設置:

  Auto – This mode will use ClearType unless system settings have been set to specifically disable ClearType on the machine.

  Aliased – No antialiasing will be used to draw text.

  Grayscale – Grayscale antialiasing will be used to draw text.

  ClearType – ClearType antialising will be used to draw text.

  (一般用ClearType渲染出來的字體會比較平滑)

  3.TextHintingMode

  獲取或設置一個值,該值影響文本元素的呈現行爲,這是一種性能優化方式,當您對文本元素的任何文本屬性進行動畫處理時,可以使用此方式。

  此屬性的值採用以下兩種可能的值:

  Animated 通過使用一個更高效、但視覺精確下降的平滑算法來針對動畫進行優化。(文本仍然是可讀的;精度損失並不嚴重。)

  Fixed(默認值)使用的算法針對視覺上精確的字體平滑效果進行了優化,但當將動畫應用於字體元素的屬性時,可能導致性能問題以及抖動,尤其是對於 FontSize 或轉換/定位/投影。

  (在需要對字體做一些動態效果,例如將字體縮放時,使用Animated能獲取較高的性能,但同時也影響了其顯示的清晰度)

  4.WPF4.0中同時針對東亞字體的渲染進行了優化,現在它支持點陣字體了,而開啓這個新特性十分簡單,只需爲FontFamily設置一種點陣字體就可以了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章