Silverlight应用程序字体获取的解决方案(补充)

来源:互联网 发布:java表格界面 编辑:程序博客网 时间:2024/05/21 10:55

上次出现的silverlight字体问题,我以为解决了。结果到客户那边去部署,还是有字体问题。字体忽明忽暗,而且字体都走样了。结果没办,只好自己在找别的解决方案。我看到网上有用Blend将字体打包的到应用程序中去的做法。

我试了,结果代码中生成了如下语句。
<TextBlock Text="Hello,测试字体" FontSize="26"FontFamily="Fonts/Fonts.zip#微软雅黑"/>
但是不起作用,我后来更具网上的想法,和silverlight的帮助文档尝试了几十种方法,
发现将字体的路径改成字体文件名称,并且将字体名称更改成英文
<TextBlock Text="Hello,测试字体" FontSize="26"FontFamily="Fonts/Fonts.zip#Microsoft YaHei"/>
可以达到从服务器上获取字体的目的。

字体文件添加到应用程序中,存放的路径如下。


所以那些网上说的,字体FontFamily="Fonts/Fonts.zip#微软雅黑"
FontFamily="Fonts/Fonts.zip#Microsoft YaHei"
或者,FontFamily=Air;component/Fonts/MSYH.TTF#微软雅黑
FontFamily=Air;component/Fonts/MSYH.TTF#Microsoft YaHei
都是无效的。

 

后台C#文件相应的改成

X.FontFamily = new FontFamily("Fonts/MSYH.TTF#Microsoft YaHei");

 

常见中文字体名和英文字体名的对应关系如下:

 

在我的应用程序中是解决了该问题。不知读者是否能适用与你的系统。