def set_style(self, style): if style == self.last_style: return self.last_style_tab style_tab = self.dc_info.styles[style].split(";") self.last_style_tab = style_tab style = "" if style_tab[3] == "1": style += "I" if style_tab[4] == "1": style += "B" if style_tab[1] in self.surf.fonts_map: font_name = self.surf.fonts_map[style_tab[1]] else: font_name = "sans-serif" self.dc.set_font( font_name, style, int((self.scale * self.base_font_size * int(style_tab[2])) / 100), ) (r, g, b) = self.rgbfromhex(style_tab[0]) self.dc.set_text_color(r, g, b) BaseDc.set_style(self, style) return style_tab
def set_style(self, style): if style == self.last_style: return self.last_style_tab style_tab = self.dc_info.styles[style].split(";") self.last_style_tab = style_tab font = wx.SystemSettings.GetFont(wx.SYS_DEFAULT_GUI_FONT) if style_tab[3] == "1": slant = wx.ITALIC font.SetStyle(wx.ITALIC) else: slant = wx.NORMAL if style_tab[4] == "1": weight = wx.BOLD font.SetWeight(wx.BOLD) else: weight = wx.FONTWEIGHT_NORMAL if style_tab[1] == "serif": font_style = wx.ROMAN font.SetFamily(wx.ROMAN) elif style_tab[1] == "sans-serif": font_style = wx.SWISS font.SetFamily(wx.SWISS) elif style_tab[1] == "monospace": font_style = wx.MODERN font.SetFamily(wx.MODERN) elif style_tab[1] == "cursive": font_style = wx.SCRIPT font.SetFamily(wx.SCRIPT) elif style_tab[1] == "fantasy": font_style = wx.DECORATIVE font.SetFamily(wx.DECORATIVE) else: font_style = wx.DEFAULT font.SetPointSize( (self.scale * (self.base_font_size * 72) * int(style_tab[2])) / (96 * 100.0)) self.dc.SetFont(font) (r, g, b) = self.rgbfromhex(style_tab[0]) self.dc.SetTextForeground(wx.Colour(r, g, b)) self.set_color(r, g, b) BaseDc.set_style(self, style) return style_tab