时间:2020-11-09 18:43:54 | 栏目:.NET代码 | 点击:次
获取已安装的所有字体列表
System.Drawing.FontFamily
StringBuilder str = new StringBuilder(2000); InstalledFontCollection fonts = new InstalledFontCollection(); foreach (FontFamily family in fonts.Families) { str.Append(family.Name); str.AppendLine(); } ContentTextBlock.Text = str.ToString();
获取区域语言字体列表
System.Windows.Media.FontFamily
StringBuilder str = new StringBuilder(2000); CultureInfo currentCulture = CultureInfo.CurrentUICulture; CultureInfo enUsCultureInfo = new CultureInfo("en-US"); foreach (var family in Fonts.SystemFontFamilies) { foreach (var keyPair in family.FamilyNames) { var specificCulture = keyPair.Key.GetSpecificCulture(); if (specificCulture.Equals(currentCulture) || specificCulture.Equals(enUsCultureInfo)) { if (keyPair.Key != null && !string.IsNullOrEmpty(keyPair.Value)) { str.Append(keyPair.Value); str.AppendLine(); } } } } ContentTextBlock.Text = str.ToString();
注:有些电脑因系统缺陷或者系统更新冲突,导致System.Windows.Media.Fonts引用失败。所以建议加个异常捕获处理。