X-Git-Url: https://git.mdrn.pl/librarian.git/blobdiff_plain/2991698067a246ea9b99b4e668d261af6d418eca..28532fa3b437bb36b9d5c582851d3cdcf8d772ab:/src/librarian/covers/marquise.py diff --git a/src/librarian/covers/marquise.py b/src/librarian/covers/marquise.py index fb84a79..d0ce49e 100644 --- a/src/librarian/covers/marquise.py +++ b/src/librarian/covers/marquise.py @@ -99,20 +99,25 @@ class MarquiseCover(Cover): (self.m.marquise_xl, None), ] - for marquise_h, lines in layout_options: - title_box_height = marquise_h - self.m.title_box_top - self.m.margin - try: - title_box = TitleBox( - self, - self.m.width - 2 * self.m.margin, - title_box_height, - lines, - force=lines is None - ) - except DoesNotFit: - continue - else: - break + # Trying all the layout options with decreasing scale. + title_box = None + title_scale = 1 + while title_box is None: + for marquise_h, lines in layout_options: + title_box_height = marquise_h - self.m.title_box_top - self.m.margin + try: + title_box = TitleBox( + self, + self.m.width - 2 * self.m.margin, + title_box_height, + lines, + scale=title_scale + ) + except DoesNotFit: + continue + else: + break + title_scale *= .99 self.marquise_height = marquise_h marquise = Marquise(self, marquise_h)