如何在.NET应用程序中找到用户的字体?

时间:2008-10-10 13:08:59

标签: .net windows fonts

如何在.NET中使用C#找到用户在其Windows显示属性中设置的字体?

我想使用用户选择的字体显示表单。我想要的字体是在Windows显示属性表单中为3D对象,菜单和窗口标题栏选择的字体。但我找不到一种方法来访问它们。有一个System.Windows.Forms.Control.DefaultFont属性,但它返回Windows默认字体(我认为,MS Sans Serif on XP)。

3 个答案:

答案 0 :(得分:1)

查看System.Drawing.Text.InstalledFontCollection对象的Families属性。您应该能够遍历Families集合以获取所有用户的字体。不幸的是,这并不能识别您正在寻找的特定字体。

http://msdn.microsoft.com/en-us/library/system.drawing.text.fontcollection.families.aspx

答案 1 :(得分:1)

使用SystemFonts类,您可以从用户选择的主题中获取字体。还返回用户自己进行的自定义。

BTW:我(使用XP)无法为3D对象选择字体,其他字体可用。

答案 2 :(得分:0)

我建议您查看Michael Kaplan博客的this article吗?它涵盖了WinForms应用程序中的用户字体。