如何在.NET中使用C#找到用戶在其Windows顯示屬性中設置的字體?如何在我的.NET應用程序中找到用戶的字體?
我想使用用戶選擇的字體顯示錶單。我想要的字體是在Windows顯示屬性窗體中爲3D對象,菜單和窗口標題欄選擇的字體。但是我找不到訪問它們的方法。有一個System.Windows.Forms.Control.DefaultFont
屬性,但這是返回Windows默認字體(也就是我認爲,MS Sans Serif在XP上)。
如何在.NET中使用C#找到用戶在其Windows顯示屬性中設置的字體?如何在我的.NET應用程序中找到用戶的字體?
我想使用用戶選擇的字體顯示錶單。我想要的字體是在Windows顯示屬性窗體中爲3D對象,菜單和窗口標題欄選擇的字體。但是我找不到訪問它們的方法。有一個System.Windows.Forms.Control.DefaultFont
屬性,但這是返回Windows默認字體(也就是我認爲,MS Sans Serif在XP上)。
使用SystemFonts類,您可以從用戶選擇的主題中獲取字體。用戶自定義也返回。
順便說一句:我(使用XP)不能選擇3D對象的字體,其他可用。
查看System.Drawing.Text.InstalledFontCollection對象的Families屬性。您應該能夠循環訪問Families集合以獲取所有用戶的字體。不幸的是,這並不能確定你正在尋找的特定字體。
http://msdn.microsoft.com/en-us/library/system.drawing.text.fontcollection.families.aspx
我可以建議你從邁克爾·卡普蘭的博客看看this article?它涵蓋了WinForms應用程序中的用戶字體。