有没有办法将已安装的字体作为列表(或数组,但我更喜欢列表)获取。
就像一个方法,它会将所有已安装的字体输出到列表中。 到目前为止,我已经创建了这个:
List<string> fonts = new List<string>();
fonts.AddRange() //I don't know what to put in those brackets to obtain fonts.
有没有更好的方法可以提供?
你需要使用InstalledFontCollection
类:
using System.Drawing.Text;
using (InstalledFontCollection fontsCollection = new InstalledFontCollection())
{
FontFamily[] fontFamilies = fontsCollection.Families;
List<string> fonts = new List<string>();
foreach (FontFamily font in fontFamilies)
{
fonts.Add(font.Source);
}
}
这是一种更简单的方法(首先创建一个列表框)-
using InstalledFontCollection col = new();
foreach (FontFamily fa in col.Families)
{
ListBox.Items.Add(fa.Name);
}
别忘记加上!-
using System.Drawing.Text;