Textumbruch

Function Kata „Textumbruch“

Implementiere eine Funktion zur Umformatierung eines Textes. Funktionssignatur:

Ein potenziell mehrzeiliger Text soll an Wortgrenzen so umgebrochen werden, dass eine maximale Zeilenlänge nicht überschritten wird, z.B.

Ausgangstext (aus „Advent“ von Loriot):

Mit einer max. Zeilenlänge von 9 würde die Funktion diesen Text produzieren:

Und mit einer max. Zeilenlänge von 14 diesen:

Worte des Ausgangstextes werden so lange mit einem Leerzeichen zwischen ihnen zu Zeilen zusammengesetzt, bis die max. Zeilenlänge erreicht ist. Passt ein Wort nicht mehr in eine Zeile, fließt es in die nächste. Worte, die länger als die max. Zeilenlänge sind, werden einfach abgeschnitten; der Rest fließt dann in die nächste Zeile (s.o. z.B. „Schneeflöcklein“).

Variante #1

Auf Wunsch kann der umgebrochene Text auch im Blocksatz geliefert werden. Leerzeichen sollten dann möglichst gleichmäßig in den Zeilen verteilt sein, z.B. mit max. Zeilenlänge 22: