Da du ja dabei was lernen willst, würde ich in so einem Fall erstmal eine Klasse erstellen, die für die Datenhaltung verantwortlich ist und eine Klasse, die für die Ausgabe zuständig ist. Bei jeder Neueingabe muss der sichtbare Teil des Canvas neugezeichnet werden. In der Klasse für die Datenhaltung verwaltest du alle notwendigen Parameter, Abstände, Breite, Höhe, Zeilenlänge und was du sonst noch brauchst. Diese Klasse speichert und lädt ein Textdokument, für das du dir eine geeignete Struktur überlegen musst.
Vielen Dank für die erste Rückmeldung. Genauso habe ich mir das auch gedacht.
Was die Struktur des Textdokuments betrifft, habe ich an das JSON-Format gedacht. Das heißt, dass die graphische Ausgabeklasse dann so etwas wie ein Wrapper für die Struktur des Textdokuments ist?
Genau um die Struktur geht es mir. Wie könnte das Aussehen?
Eine Paragraph besteht aus Characters und jeder Character hat sein eigenen Style. Das gesamte Dokument besteht aus Paragraphs.