前言:
如今看官们对“win10如何改变字体样式”大约比较着重,大家都想要剖析一些“win10如何改变字体样式”的相关资讯。那么小编也在网络上搜集了一些关于“win10如何改变字体样式””的相关文章,希望小伙伴们能喜欢,姐妹们快快来了解一下吧!实战wxPython系列-059
字体是决定文本外观的对象,字体用于将文本绘制到设备上下文,并设置窗口文本的外观。
一、wx.Font简介
创建自定义字体最简单的方法是使用wx. FontInfo对象指定字体属性,然后使用wx.Font构造函数来创建。
wx.Font的构造函数形式为:
wx.Font(pointSize,family,style,weight,underline,faceName,encoding)
参数:
pointSize: pointSize是字体的以磅为单位的整数尺寸。
family: family用于快速指定一个字体而无需知道该字体的实际的名字.字体的准确选择依赖于系统和具体可用的字体.你所得到的精确的字体将依赖于你的系统。字体类别如下:
wx.DECORATIVE:一个正式的,老的英文样式字体;wx.DEFAULT:系统默认字体;wx.MODERN:一个单间隔(固定字符间距)字体。wx.ROMAN:serif字体,通常类似于Times New Roman。wx.SCRIPT:手写体或草写体。wx.SWISS:sans-serif字体,通常类似于Helvetica或Arial。
style: style参数指明字体的是否倾斜,它的值有:
wx.NORMALwx.SLANTwx.ITALIC
weight: weight参数指明字体的醒目程度,它的值有:
wx.NORMAL: 普通字体;wx.LIGHT: 高亮字体;wx.BOLD: 粗体。
underline: underline参数仅工作在Windows系统下,如果取值为True,则加下划线,False为无下划线。
faceName: faceName参数指定字体名。
encoding: encoding参数允许你在几个编码中选择一个,它映射内部的字符和字本显示字符。编码不是Unicode编码,只是用于wxPython的不同的8位编码。大多数情况你可以使用默认编码。
wx.Font常用方法:
GetFaceName(self):返回与字体相关的face name,如果没有face信息则返回空字符串。GetFamily(self):如果可能,获取字体族。如果wx.Font或底层系统无法识别当前字体面名称,则返回FONTFAMILY_DEFAULT。GetPixelSize(self):获取字体的像素尺寸。GetStyle(self):获取字体样式。GetUnderlined(self):如果字体有下划线则返回True,否则返回False。GetWeight(self):获取字体权重。IsFixedWidth(self):如果字体是固定宽度(或等宽)字体则返回True,如果是比例字体或字体无效则返回False。Italic(self):返回此字体的斜体版本。Bold(self):返回此字体的粗体版本。Underlined(self):返回该字体加下划线的版本。MakeBold(self):将此字体更改为粗体。MakeItalic(self):将此字体更改为斜体。MakeUnderlined(self):将此字体更改为带下划线字体。SetFaceName(self, faceName):设置字体的facename。SetFamily(self, family):设置字体族。SetPixelSize(self, pixelSize):设置字体的像素尺寸。SetStyle(self, style):设置字体样式。SetUnderlined(self, underlined):设置下划线。SetWeight(self, weight):设置字体权重。
二、wx.Font演示
#字体(wx.Font)import wxclass SampleFont(wx.Frame): def __init__(self, *args, **kw): super(SampleFont, self).__init__(*args, **kw) self.InitUi() def InitUi(self): self.SetTitle("实战wxPython: 字体演示") self.SetSize(400, 240) panel = wx.Panel(self) box = wx.BoxSizer(wx.VERTICAL) txt1 = "Python GUI development" txt2 = " using wxPython" txt3 = " Python port of wxWidget " txt = txt1+"\n"+txt2+"\n"+txt3 font = wx.Font(18, wx.ROMAN, wx.ITALIC, wx.NORMAL) lbl = wx.StaticText(panel, wx.ID_ANY, style = wx.ALIGN_CENTER) lbl.SetFont(font) lbl.SetLabel(txt) box.Add(lbl, 0, wx.ALIGN_CENTER) lblwrap = wx.StaticText(panel, wx.ID_ANY, style = wx.ALIGN_RIGHT) txt = txt1+txt2+txt3 lblwrap.SetLabel(txt) lblwrap.Wrap(200) box.Add(lblwrap, 0, wx.ALIGN_LEFT) lbl1 = wx.StaticText(panel, wx.ID_ANY, style = wx.ALIGN_LEFT | wx.ST_ELLIPSIZE_MIDDLE) lbl1.SetLabel(txt) lbl1.SetForegroundColour((255,0,0)) lbl1.SetBackgroundColour((0,0,0)) font = self.GetFont() font.SetPointSize(20) lbl1.SetFont(font) box.Add(lbl1, 0, wx.ALIGN_LEFT) panel.SetSizer(box) self.Centre()def main(): app = wx.App() sample = SampleFont(None) sample.Show() app.MainLoop()if __name__ == "__main__": main()
上面的代码演示了在wxPython的控件中如何使用wx.Font,运行结果如图1所示:
三、本文知识点
掌握和使用wx.Font。
前一篇:wxPython - GDI基本元素之画刷Brush
请关注,评论,收藏,点赞,和转发。
标签: #win10如何改变字体样式