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#程序设计有所帮助。