[Silverlight]奇技银巧系列-6 使用点阵字体(如宋体)及相关方面的技巧
2009-12-31 15:20
288 查看
我们知道,Silverlight的默认中文字体是【雅黑】,它是一种矢量字体,有点是可以保证在文字大小变化时也不失真。但是它的效果真的如我们想想中那么好吗?
我们做一个实验,一段简单的XAML
效果如下图:
看起来还可以,但是做过实际项目开发的各位都清楚,sl中雅黑下的某些字比如:“增”字一类的字变形的比较厉害(虽然sl3有了明显的改善),这很难让我们这些经常和宋体等标准中文字体打交道的人接受。
群里经常有人问:“为啥sl的字体那么模糊啊。sl不能用宋体,真烂!”等等。
其实sl中是绝对可以使用点阵字体的,只不过这个技巧大部分人不太清楚而已。
我们设置一下XAML的FontFamily属性
看效果
怎么样?标准的宋体吧!关键就在于FontFamily的值应该是“SimSun”而不是“宋体”。
不过到了这里,这个解决方案还不是很完美。我们仔细看“ABC”这三个英文,还不如默认的好看呢。这个具体我也不大清楚,不过要解决这个问题我们只需显式的设置英文(比如Arial)字体就可以了。具体设置方法看XAML
看效果
恩,很完美了哦。
注意FontFamily的顺序和设置方法:两种字体见要以半角逗号(,)分割,而且英文字体必须写在中文字体之前。
OK,希望对大家有用。
提前祝大家元旦快乐!
我们做一个实验,一段简单的XAML
<TextBlock FontSize="14" Text="我是宋体吗ABC?" Margin="30"/>
效果如下图:
看起来还可以,但是做过实际项目开发的各位都清楚,sl中雅黑下的某些字比如:“增”字一类的字变形的比较厉害(虽然sl3有了明显的改善),这很难让我们这些经常和宋体等标准中文字体打交道的人接受。
群里经常有人问:“为啥sl的字体那么模糊啊。sl不能用宋体,真烂!”等等。
其实sl中是绝对可以使用点阵字体的,只不过这个技巧大部分人不太清楚而已。
我们设置一下XAML的FontFamily属性
<TextBlock FontSize="14" FontFamily="SimSun" Text="我是宋体吗ABC?" Margin="30"/>
看效果
怎么样?标准的宋体吧!关键就在于FontFamily的值应该是“SimSun”而不是“宋体”。
不过到了这里,这个解决方案还不是很完美。我们仔细看“ABC”这三个英文,还不如默认的好看呢。这个具体我也不大清楚,不过要解决这个问题我们只需显式的设置英文(比如Arial)字体就可以了。具体设置方法看XAML
<TextBlock FontSize="14" FontFamily="Arial,SimSun" Text="我是宋体吗ABC?" Margin="30"/>
看效果
恩,很完美了哦。
注意FontFamily的顺序和设置方法:两种字体见要以半角逗号(,)分割,而且英文字体必须写在中文字体之前。
OK,希望对大家有用。
提前祝大家元旦快乐!
相关文章推荐
- linux shell 动态生成 数组系列 seq使用技巧
- SilverLight开发系列第2步:使用vs2008和Blend 2.5打造Hellow World程序
- Silverlight实用窍门系列:47.Silverlight中元素到元素的绑定,以及ObservableCollection和List的使用区别
- 在Eclipse中使用技巧的总结系列
- 深入了解ApusicAS服务器配置系列之——AAS集群:使用第三方负载均衡器相关配置
- 窗口使用技巧系列文章--窗口之间的协作(下)
- Bing Maps进阶系列六:使用Silverlight剪切(Clip)特性实现Bing Maps的迷你小地图
- 一步一步学Silverlight 2系列(27):使用Brush进行填充
- Silverlight实用窍门系列:26.Silverlight多线程技术ThreadPool的使用【附带源码实例】
- [C# 开发技巧系列]使用C#操作Word和Excel程序
- SilverLight 系列第二讲:使用Canvas对象
- Google Map开发系列(一)——谷歌地图API密钥(API Key)的解读和使用技巧
- linux命令学习系列10-权限相关chown,chmod,chgrp命令的使用
- Android Studio使用技巧系列教程(一)
- 网络相关系列之一:Android中使用HttpClient发送HTTP请求
- 一步一步学Silverlight 2系列(9):使用控件模板
- C# Enum设计和使用的相关技巧
- 一步一步学Silverlight 2系列(30):使用Transform实现更炫的效果(下)
- Silverlight实用窍门系列:57.Silverlight中的Binding使用(二)-数据验证
- Silverlight实用窍门系列:15.Visifire图表控件的使用二(DataPoint点击事件和Legend文字标注栏的点击事件)【附带源码实例】