列出Windows 10 Universal App中安装的字体名称

Raf*_*Raf 4 c# fonts sharpdx win-universal-app windows-10

我正在使用C#构建一个Windows 10通用应用程序,它必须列出系统上已安装字体的名称.该应用程序是一个地铁/现代ui/windows 8.1应用程序,我使用SharpDX'技巧'来获取名称.

对于Windows 10 UAP,SharpDX不可用(但是?),因此不再适用.

有没有其他方法来实现我的目标?我应该考虑所描述的字体名称的固定列表这里在推荐的字体?例如,在桌面上这似乎相当有限.

提前致谢!

Rob*_*SFT 7

相同的基本想法:您仍将使用DirectWrite来获取字体名称.

您可以使用Win2D在Windows 8.1和通用Windows平台应用程序中从C#获取DirectWrite.CanvasTextFormat.GetSystemFontFamilies将返回字体系列:

string[] fonts = Microsoft.Graphics.Canvas.Text.CanvasTextFormat.GetSystemFontFamilies();
foreach (string font in fonts)
{
    Debug.WriteLine(string.Format("Font: {0}", font));
}
Run Code Online (Sandbox Code Playgroud)