慕虎7371278
2019-07-29 15:20:15
WPF模糊字體問題 - 解決方案問題在以下鏈接中描述和演示:Paul Stovell WPF:模糊文本渲染www.gamedev.net論壇Microsoft Connect:WPF文本渲染器在小字體上生成嚴(yán)重模糊的文本說明:WPF中的文本清晰度。此鏈接具有字體比較。我想為這個問題收集所有可能的解決方案。Microsoft Expression Blend使用WPF但字體看起來可讀。Microsoft Expression Blend中的深色背景增加字體大小和更改字體(Calibri ...)[鏈接]嵌入窗體[鏈接]使用GDI +和/或Windows窗體TextRenderer類將文本呈現(xiàn)到位圖,然后將該位圖呈現(xiàn)為WPF控件。[鏈接]有沒有更多的解決方案?這將在VS2010(和WPF4)beta 2中修復(fù)它看起來像它已被最終解決!Scott Hanselman的ComputerZen.com:WPF和Text Blurriness,現(xiàn)在有完全的Clarity
3 回答

炎炎設(shè)計
TA貢獻(xiàn)1808條經(jīng)驗 獲得超4個贊
.NET 4最終解決了WPF文本呈現(xiàn)質(zhì)量差的問題,但它隱藏得很好。為每個窗口設(shè)置以下內(nèi)容:
TextOptions.TextFormattingMode="Display"
默認(rèn)值是“理想”,它完全不是名稱所暗示的。
TextOptions中還有另外兩個選項,即TextHintingMode和TextRenderingMode,但它們都有合理的默認(rèn)值。

青春有我
TA貢獻(xiàn)1784條經(jīng)驗 獲得超8個贊
前幾天我使用了應(yīng)用了DropShadowEffect的邊框時遇到了問題。結(jié)果是該邊界內(nèi)的所有文本都非常模糊。如果文本位于其他面板內(nèi)或直接位于邊框下,則無關(guān)緊要 - 任何具有效果的父級子級的文本塊似乎都會受到影響。
這個特殊情況的解決方案是不將東西放在有效果的邊框內(nèi),而是使用網(wǎng)格(或任何其他支持將內(nèi)容放在彼此之上的東西)并在與文本相同的單元格中放置一個矩形(即作為視覺樹中的兄弟姐妹)并對其產(chǎn)生影響。
像這樣:
<!-- don't do this ---><Border> <Border.Effect> <DropShadowEffect BlurRadius="25" ShadowDepth="0" Opacity="1"/> </Border.Effect> <TextBlock Text="This Text Will Be Blurry" /></Border><!-- Do this instead --><Grid> <Rectangle> <Rectangle.Effect> <DropShadowEffect BlurRadius="25" ShadowDepth="0" Opacity="1"/> </Rectangle.Effect> </Rectangle> <TextBlock Text="This Text Will Be Crisp and Clear" /></Grid>
添加回答
舉報
0/150
提交
取消