code: def split_title(title, width, title_fs):
      
      titles = []
      if not title:
          return titles
      size = reverse_text_len(width, title_fs * 1.1)
      title_lines = title.split("\n")
      for title_line in title_lines:
          while len(title_line) > size:
              title_part = title_line[:size]
              i = title_part.rfind(' ')
              if i == -1:
                  i = len(title_part)
              titles.append(title_part[:i])
              title_line = title_line[i:].strip()
          titles.append(title_line)
      return titles
docs: Split a string for a specified width and font size