2014-04-24 36 views
0

我有一个运行在WinXP上的C#应用​​程序,需要显示一些符号,但我所得到的只是正方形。我做了一些挖掘并发现字体链接。在Windows XP中使用Myriad Pro的FontLink

我用Arial和Calibri成功地使用它,我无法让它与Myriad Pro一起工作。

我在注册表中设置以下的HKEY_LOCAL_MACHINE–\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink(以下http://msdn.microsoft.com/en-us/goglobal/bb688134

Arial  | REG_SZ  | segoe_ui_symbol.ttf,Segoe UI Symbol 
Calibri | REG_MULTI_SZ | segoe_ui_symbol.ttf,Segoe UI Symbol 
MyriadPro | REG_MULTI_SZ | segoe_ui_sumbol.ttf,Segoe UI Symbol 

等了MyriadPro大胆的,大胆的浓缩,大胆浓缩斜体,粗体斜体,冷凝,冷凝斜体,定期,semibol, semibold斜体,但我仍然得到正方形而不是字符...我也尝试使用Myriad作为一个关键,也不工作...

在我添加Arial和Calibri的条目之前,我有正方形而不是字符,但他们在添加条目后开始工作。

我在做什么错?我可以不链接Myriad Pro吗?

在此先感谢!

回答

0

我最终设法弄清了什么是错的。

显然缺省字符的字体默认为Microsoft Sans Serif,但Microsoft Sans Serif可能没有这些字符。

我不得不手动安装Segoe UI Symbol字体并将其链接到Microsoft Sans Serif。 我HKEY_LOCAL_MACHINE–\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink

seguisym.ttf,Segoe UI Symbol 

这样做是通过添加以下条目Microsoft Sans Serif一对(文件名,字体名)。没有空格,因为这是我在我的问题中提到的页面所做的。

Segoe UI Symbol可能已经在我的环境中看到的Win7中安装,但可能会出现需要手动安装的情况。 YMMV在这里,我正在为嵌入式系统使用Win7的特定安装。