如何获取 Windows 字体文件夹的路径?

Posted

技术标签:

【中文标题】如何获取 Windows 字体文件夹的路径?【英文标题】:How to get the path to the Windows fonts folder? 【发布时间】:2011-11-16 11:41:28 【问题描述】:

我正在使用 C# 来获取系统字体文件夹的确切路径。 找不到执行此操作的类/dll。

【问题讨论】:

【参考方案1】:
Environment.SpecialFolders.Fonts

【讨论】:

【参考方案2】:
string fontFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.Fonts);

【讨论】:

【参考方案3】:
string fontsfolder = System.Environment.GetFolderPath(
System.Environment.SpecialFolder.Fonts);

请注意,SpecialFolder 枚举中的 Fonts 文件夹仅在 .Net 4 及更高版本中可用。

【讨论】:

【参考方案4】:

对于此处指定 Environment.SpecialFolders.Fonts 的答案,该枚举值仅存在于 .NET 4.0+ 中。

对于 .NET 1.1 - 3.5,您可以执行以下操作:

字体文件夹位于 Windows 文件夹内(例如 C:\Windows\Fonts)。通过以下步骤以编程方式获取它:

    关闭另一个在 .NET 2 的枚举值中确实存在的特殊文件夹,例如系统文件夹 Environment.SpecialFolder.System

    抓取系统文件夹的父文件夹(获取基础Windows文件夹)

    将字体名称连接到 Windows 文件夹以获得最终结果。

此代码示例使用 System 文件夹并执行此操作。您可以关闭其他文件夹。

using System.IO;

// get parent of System folder to have Windows folder
DirectoryInfo dirWindowsFolder = Directory.GetParent(Environment.GetFolderPath(Environment.SpecialFolder.System));

// Concatenate Fonts folder onto Windows folder.
string strFontsFolder = Path.Combine(dirWindowsFolder.FullName, "Fonts");

// Results in full path e.g. "C:\Windows\Fonts"

【讨论】:

以上是关于如何获取 Windows 字体文件夹的路径?的主要内容,如果未能解决你的问题,请参考以下文章

如何从Windows Phone获取字体文件

如何在 Java 7 和 8 中找出字体文件路径

python如何获取电脑已安装字体列表

linux如何安装中文字体库

windows7文件夹路径包含非法字符

如何在Linux WPS中使用windows字体