欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#读取系统字体颜色与大小的方法

程序员文章站 2023-11-17 19:00:22
本文实例讲述了c#读取系统字体颜色与大小的方法。分享给大家供大家参考。具体分析如下: 首先,说到字体、颜色,我们应该想到system.drawing命名空间 先说说获取...

本文实例讲述了c#读取系统字体颜色与大小的方法。分享给大家供大家参考。具体分析如下:

首先,说到字体、颜色,我们应该想到system.drawing命名空间

先说说获取系统字体的方法:

在system.drawing命名空间下有个fontfamily类,其下有个静态属性:families(返回的是一个 fontfamily对象数组)

注:system.drawsing.fontfamily是一个密封类。

而在system.drawing.text命名空间下有个installedfontcollection类,其下也有个属性:families,不过此时不是静态属性。

注:system.drawing.installedfontcollection也是一个密封类。

现在分别用这两个东东来获取一下:

fontfamily获取:

//前台有个familylist(dropdownlist控件)
for(int i=0;i<fontfamily.families.length;i++)
{
  familylist.items.add(fontfamily.families[i].name);
}

第一种方法简单吧。

第二种方法:installedfontcollection

installedfontcollection ifc=new installedfontcollection();
foreach(fontfamily ff in ifc.families)
{
 familylist2.items.add(ff.name);
}

这个也简单 ^_^

获取系统已安装的颜色:

打开msdn,你会发现,system.drawing下有个knowncolor的枚举,其中就列出了n多颜色值哦,现在我们把它读出来~~

//system.drawing.knowncolor
string[] colors=enum.getnames(typeof(system.drawing.knowncolor);
foreach(string color in colors)
{ 
 listitem list=new listitem(color);
 list.attributes.add("style","color:"+color);
 colorlist.items.add(list);
}

获取字体大小:

字体大小应该也和颜色一样有个枚举存储。但此时,它却在system.web.ui.webcontrols下了,大名叫:fontsize

代码如下:

//system.web.ui.webcontrols.fontsize
string[] sizes=enum.getname(typeof(system.web.ui.webcontrols.fontsize));
foreach(string size in sizes)
{
 sizelist.items.add(size);
}

随便提一下:enum.getnames(type)返回的是一个字体串数组,而enum.getvalues(type)返回的是array对象。

希望本文所述对大家的c#程序设计有所帮助。