'Try to find a maximum font size that fits all strings within the height'

def fit_text(self, strings, heightlimit):

    self.ctx.set_font_size(heightlimit)
    (_, _, _, maxheight, _, _) = self.ctx.text_extents(''.join(strings))
    if (not maxheight):
        return (0, 0)
    self.ctx.set_font_size(int(((heightlimit * heightlimit) / maxheight)))
    (maxwidth, maxheight) = (0, 0)
    for i in strings:
        (_, _, x, y, _, _) = self.ctx.text_extents(i)
        maxwidth = max(maxwidth, x)
        maxheight = max(maxheight, y)
    return (maxwidth, maxheight)
