WPF文字渲染相关的问题及解决

原创 2015年07月07日 22:46:53

wpf中经常遇到各种和文字渲染有关的问题, 现在列举下现象和解决方案。

(1)
现象: 文字大小不一,不在同一水平线, 不同字渲染成同一个字, 或者字体发虚

原因:微软雅黑字体对中文字符的渲染支持不好,下面给出系统推荐的语言字体设置表,而且MSFT在内置的位图映射表中对东亚字符进行了优化。

Language

Font

Traditional Chinese

MingLiu

Simplified Chinese

SimSun

Japanese

MS Gothic

Korean

Gulium

Korean

Batang


解决办法:
按照推荐表,中文尽量选择SimSun,效果如下:


(2)
现象:放在ViewBox中时, 发生模糊

原因:未知
解决办法:更改TextFormattingMode为Ideal

(3)
现象:TextBlock在Popup中自动换行时, 如果文字中包含‘-’, 即Minus,每行的最后一个字丢失
原因:未知
解决办法:更改TextFormattingMode为Ideal


(4)
现象:文字发绿,显示多彩不正常



解决办法:
更新显卡驱动,确认系统ClearType是否开启。




参考:
http://blogs.msdn.com/b/text/archive/2009/08/24/wpf-4-0-text-stack-improvements.aspx
https://msdn.microsoft.com/zh-cn/library/system.windows.media.textrenderingmode(v=vs.100).aspx
https://msdn.microsoft.com/zh-cn/library/system.windows.media.textformattingmode(v=vs.100).aspx
https://msdn.microsoft.com/zh-cn/library/system.windows.media.texthintingmode(v=vs.100).aspx







版权声明:本文为博主原创文章,欢迎转载,仅请署名

相关文章推荐

WPF---ListView添加窗格线

要想直接在WPF中给ListView加上横竖线条,是一件很费劲的事情,不过我们可以通过其他的办法,来绕过去,具体是什么办法呢,就看下面的步骤吧! 1. 建立一个WPF程序 2. 添加一个类文件,命...

WPF中动态创建动画(一)

最近开始研究WPF,WPF是微软在.NET3.0中新加进的功能,一同被加进来的还有WCF、WF,这三个新的特性使得.NET变得更加丰富。 关于WPF,个人比较推荐的入门书籍是Charles Petzo...
  • Sevan7
  • Sevan7
  • 2010年05月08日 10:18
  • 6447

【C#/WPF】TextBlock/TextBox/Label编辑文字的问题

允许用户编辑文字

WPF模拟键盘输入相关问题

WPF模拟键盘输入碰到的问题。

WPF_界面_图片/界面/文字模糊解决之道整理

图片模糊: 图片尺寸:  检查图片,png, DPI=72,Stretch="None",原图尺寸和xaml里面写的尺寸一致。如果替换为大尺寸的原图,使用时,size写的小一点,同比例缩小,没问题...

wpf4 文字 模糊 不清晰 解决方法

在窗口或控件上设置字体属性就可以了,如下:              xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentati...
  • ghevinn
  • ghevinn
  • 2015年07月27日 21:24
  • 1261

wpf4 文字 模糊 不清晰 解决方法

在窗口或控件上设置字体属性就可以了,如下:              xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentati...
  • Alsmile
  • Alsmile
  • 2011年08月24日 15:45
  • 3729

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

在窗口或控件上设置字体属性就可以了,如下: 以下是代码片段: xmlns="http://schemas.microsoft.com/winfx/2006/xaml/pre...
  • duo002
  • duo002
  • 2013年03月21日 13:24
  • 258

Unity NGUI UILabel文字变色 及相关问题

在同一个UILabel中可以有不同颜色的文字只需要添加BBCode标记[ff0000]Red Label[-],那么在这个标记之间的RedLabel 就会变成红色 注意: 1.文本最终显示...

QT 多语言 字库 编码 文字方向相关问题

QT是支持多语言的,能够支持不同语言的动态切换,不同语言对应的编码格式转换,不同语言字体使用不同字库进行显示。 编码 QT对于字符串的处理使用了基本类型QString,它将所有传递给它的字...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:WPF文字渲染相关的问题及解决
举报原因:
原因补充:

(最多只允许输入30个字)