c# – 使用XAML字体系列会破坏一些Unicode字形

c# – 使用XAML字体系列会破坏一些Unicode字形,第1张

概述我试图在没有任何特定属性的XAML TextBlock中显示各种Unicode字符: <TextBlock Text="{Binding MyString}" Foreground="Black" /> 这适用于我的Windows 8.1系统上的所有脚本,除了表情符号字符: 由于这些符号在Segoe UI Symbol字体中可用,我只需将其添加到FontFamily: <TextBlock Tex 我试图在没有任何特定属性的XAML TextBlock中显示各种Unicode字符:

<TextBlock Text="{Binding MyString}" Foreground="Black" />

这适用于我的windows 8.1系统上的所有脚本,除了表情符号字符:

由于这些符号在Segoe UI Symbol字体中可用,我只需将其添加到FontFamily:

<TextBlock Text="{Binding MyString}" Foreground="Black"           FontFamily="Segoe UI Symbol" />

但是,现在一些西里尔符号被破坏了:

所以我试着启用几种字体,包括composite fonts listed on MSDN:

<TextBlock Text="{Binding MyString}" Foreground="Black"           FontFamily="LucIDa Sans Unicode,LucIDa Grande,Segoe UI Symbol,Open Sans,Arial,Microsoft Sans serif,Tahoma,CourIEr New,Times New Roman,Global User Interface,Portable User Interface" />

但我得到了完全相同的结果:

我怎样才能解决这个问题?是不是全局用户界面应该给我一个适当的所有角色的后备?当我指定没有FontFamily时,我的TextBlock可以使用什么?

解决方法 我终于设法解决了这个问题.看起来:

>除了Segoe UI Symbol之外,还需要Segoe UI.
> Segoe UI符号会搞乱一些字符,不会使用跟随它的字体;因此应将其移至最后.

以下字符串有效,现在我的所有字形都会呈现:

<TextBlock Text="{Binding MyString}" Foreground="Black"           FontFamily="Segoe UI,LucIDa Sans Unicode,Portable User Interface,Segoe UI Symbol" />
总结

以上是内存溢出为你收集整理的c# – 使用XAML字体系列会破坏一些Unicode字形全部内容,希望文章能够帮你解决c# – 使用XAML字体系列会破坏一些Unicode字形所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/langs/1231200.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存