2011-01-10 53 views
1

我的字体下面的列表: Font list自定义字体样式与图形

我通过

new Font("XXXX Sans", 21, FontStyle.Bold, GraphicsUnit.Pixel) 

与使用它们没有问题,但是,我做了什么,当我需要使用非像光一样的标准字体样式?所提供的只是枚举,并不适合。

回答

5

您不能仅仅使用控制面板中显示的字体名称吗?大多数不规则,粗体或斜体的字体实际上都有一个子类型的“常规”。如果您从Microsoft下载font properties extensions,则可以在名称选项卡上看到此内容。在控制面板中列出他们的.Net知道他们的方式和方法有时是不同的,所以它是一个好主意,从.net的角度列出了所有的字体:

 var installed_fonts = new InstalledFontCollection(); 
     var families = installed_fonts.Families; 
     var allFonts = new List<string>(); 
     foreach(FontFamily ff in families){ 
      allFonts.Add(ff.Name); 
     } 
     allFonts.Sort(); 
     foreach(String s in allFonts){ 
      Console.WriteLine(s); 
     } 

及这里的使用示例富兰克林哥特式黛咪Cond(在CP列为“富兰克林哥特式秃头黛米”)

e.Graphics.DrawString("Test", new Font("Franklin Gothic Demi Cond", 12), new SolidBrush(Color.Red), 25, 25); 
+0

解决了它,谢谢! – Hawxby 2011-01-10 18:10:01