zoukankan      html  css  js  c++  java
  • C# 获取系统所有字体

    获取已安装的所有字体列表

    System.Drawing.FontFamily

    1     StringBuilder str = new StringBuilder(2000);
    2     InstalledFontCollection fonts = new InstalledFontCollection();
    3     foreach (FontFamily family in fonts.Families)
    4     {
    5         str.Append(family.Name);
    6         str.AppendLine();
    7     }
    8     ContentTextBlock.Text = str.ToString();

    获取区域语言字体列表

    System.Windows.Media.FontFamily

     1     StringBuilder str = new StringBuilder(2000);
     2     CultureInfo currentCulture = CultureInfo.CurrentUICulture;
     3     CultureInfo enUsCultureInfo = new CultureInfo("en-US");
     4     foreach (var family in Fonts.SystemFontFamilies)
     5     {
     6         foreach (var keyPair in family.FamilyNames)
     7         {
     8             var specificCulture = keyPair.Key.GetSpecificCulture();
     9             if (specificCulture.Equals(currentCulture) || specificCulture.Equals(enUsCultureInfo))
    10             {
    11                 if (keyPair.Key != null && !string.IsNullOrEmpty(keyPair.Value))
    12                 {
    13                     str.Append(keyPair.Value);
    14                     str.AppendLine();
    15                 }
    16             }
    17         }
    18     }
    19     ContentTextBlock.Text = str.ToString();

     注:有些电脑因系统缺陷或者系统更新冲突,导致System.Windows.Media.Fonts引用失败。所以建议加个异常捕获处理。

  • 相关阅读:
    su和sudo命令详解
    JS线程Web worker
    Navicat 批处理 自动备份数据库
    MySql【Error笔记】
    vue入门
    动态库
    环境变量
    cmake_learn
    自动编译
    网络编程
  • 原文地址:https://www.cnblogs.com/kybs0/p/12376041.html
Copyright © 2011-2022 走看看