我们如何从应用于WPF RichTextBox中的运行的CompositeFontFamily中提取实际字体系列

时间:2010-09-07 05:26:04

标签: wpf fonts richtextbox

复合字体系列是FontFamilies的集合。在将复合字体应用于运行时,将根据文本应用其font-collection中的相应字体。

如何在已应用复合字体的运行中获取实际使用的字体?

EDIT2 :假设我有一次运行

<Run Text="Some text with different unicode characters not available in applied FontFamily" FontFamily="Global User Interface"/>

现在,如果我检查run.FontFamily,它将返回“全局用户界面”,但实际应用的字体是此复合字体的FontFamily集合中的一个。所以我想找出它是哪种字体?

EDIT1 :我能想到的一种方法是 - 以WPF应用字体的方式找到它。对于每种语言,复合字体指定与指定字符范围对应的一组字体。因此,我们可以在一系列文本中找到每个字符,然后在fontfamilymap中查找与此字符对应的字体以获取当前语言。

这是正确的方法吗?有什么情况可能会失败吗? 这是唯一的方法吗?是否有任何API直接的方式?

由于

0 个答案:

没有答案