我知道WPF的默认字体是Segoei UI
。例如,该字体没有中文字符的字形。因此,当用户放置如下文本时,它如何检测应该使用哪种字体来正确呈现它们。它是检查每个字符的范围并查找具有这些字符的字体,还是内部使用包含大多数Unicode字符的某种字体?
答案 0 :(得分:2)
WPF中的这种机制称为Font Fallback
字体回退
字体回退是指自动替换客户端应用程序选择的字体以外的字体。调用字体回退有两个主要原因:
客户端应用程序指定的字体在系统上不存在。
客户端应用程序指定的字体不包含呈现文本所需的字形。
在WPF中,字体回退机制使用默认回退字体系列"全局用户界面"作为替代字体。此字体定义为复合字体,其文件名为" GlobalUserInterface.CompositeFont"。有关复合字体的详细信息,请参阅本主题中的“复合字体”部分。
(如果您因为想要更改后备字体而询问,则链接文章包含作为WPF一部分的默认后备字体列表以及有关如何手动设置后备字体的说明。)
以下是一些Fonts created by Microsoft for specific charsets:
Segoe UI包括拉丁语,希腊语,西里尔语和阿拉伯语字符。还有针对其他字符集和用途创建的新字体,也针对ClearType进行了优化。其中包括Meiryo for Japanese,Malgun Gothic for Korean,Microsoft JhengHei for Chinese(Traditional),Microsoft YaHei for Chinese(Simplified),Gisha for Hebrew,Leelawadee for Thai,以及为文档使用而设计的ClearType Collection字体。