在C#中是否有任何方法可以发现给定的字体是opentype字体。就像我们在Winform中打开一个FontDialog并从列表中选择一个openType字体,然后按Ok按钮,它将弹出一个对话框,其中只支持TrueType字体。这不是一个TrueType字体.,异常消息。
所以我想知道在FontDialog中实现了什么样的逻辑来检查字体,这是OpenType字体还是真字体。
我有一个System.Windows.Media.FontFamily列表,我想告诉用户您选择了OpenType字体,并且选择了非开放式字体。
代码是
var vFonts = System.Windows.Media.Fonts.SystemFontFamilies;
foreach (System.Windows.Media.FontFamily fontFamily in vFonts)
{
m_lstFont.Add(fontFamily.Source);
}当用户从m_lstFont中选择任何字体时,它会弹出对话框,您已经选择了OpenType字体,或者您选择了非打开类型的字体。
发布于 2014-01-22 07:28:01
打开的类型有一个后缀(文件扩展名)为otf。
https://stackoverflow.com/questions/21276558
复制相似问题