c# – 在Windows 10 Universal App中列出已安装的字体名称

我正在使用C#构建一个Windows 10通用应用程序,它必须列出系统上已安装字体的名称.该应用程序是一个地铁/现代ui / Windows 8.1应用程序,我用the SharpDX ‘trick’来获取名称.对于Windows 10 UAP,SharpDX不可用(但是...

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

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

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

提前致谢!

解决方法:

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

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

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

本文标题为:c# – 在Windows 10 Universal App中列出已安装的字体名称

基础教程推荐