Align text in speedo, tacho

This commit is contained in:
XANTRONIX Development 2024-01-02 14:54:52 -05:00
parent 61498c91a6
commit 7f1a6aba98
2 changed files with 17 additions and 5 deletions

View file

@ -45,6 +45,8 @@ class Speedo(Dial):
def draw_fg(self, cr: cairo.Context):
super().draw_fg(cr)
text = "%d mph" % self.value
cr.select_font_face("Muli",
cairo.FontSlant.ITALIC,
cairo.FontWeight.BOLD)
@ -52,7 +54,11 @@ class Speedo(Dial):
cr.set_font_size(self.radius * 0.15)
cr.set_source_rgb(1, 0.4, 1)
cr.move_to(self.x - (self.radius * 0.21),
self.y + (self.radius * 0.05))
extents = cr.text_extents(text)
width = extents[2] - extents[0]
height = extents[3] - extents[1]
cr.show_text("%d mph" % self.value)
cr.move_to(self.x - width / 2,
self.y + height / 4)
cr.show_text(text)

View file

@ -82,12 +82,18 @@ class Tacho(Dial):
def draw_fg(self, cr: cairo.Context):
super().draw_fg(cr)
text = str(self.gear)
cr.select_font_face("HEX:gon Bold Italic")
cr.set_font_size(self.radius * 0.4)
cr.set_source_rgb(1, 0.4, 1)
cr.move_to(self.x - (self.radius * 0.21),
self.y + (self.radius * 0.18))
extents = cr.text_extents(text)
width = extents[2] - extents[0]
height = extents[3] - extents[1]
cr.move_to(self.x - width / 2,
self.y + height / 4)
cr.show_text(str(self.gear))