diff --git a/Calendar/TextWraper.py b/Calendar/TextWraper.py new file mode 100644 index 0000000..ef529a4 --- /dev/null +++ b/Calendar/TextWraper.py @@ -0,0 +1,18 @@ +from Assets import path, defaultfont +from PIL import ImageFont + +def wrap_text_with_font (text, width, font): + words = text.split(' ') + result = "" + for index, word in enumerate(words): + until_current = (result + " " + word).strip() + txt_width, _ = font.getsize_multiline(until_current) + if txt_width > width: + result += '\n' + else: + result += ' ' + result += word + return result.strip() + +def wrap_text (text, width, font_size, font_family = defaultfont): + return wrap_text_with_font(text, width, ImageFont.truetype(path + font_family, font_size)) \ No newline at end of file