String mit Umbrüchen zentriert zeichnen

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von vb-programmer.

    String mit Umbrüchen zentriert zeichnen

    Hallo!
    Ich habe folgendes Problem: Ich habe einen String, wo ein Text mit Zeilenumbrüchen drin steht.
    Nun möchte ich diesen bspweise auf PictureBox mit Paint-Event zeichnen. Aber so, dass jede Zeile zentriert auf der PictureBox positioniert wird, also so z.B:
    ------------------------texttext
    --------------------beispielspieltext
    ---------------------------txt
    -----------------------texttexttex
    edit: Striche bitte wegdenken ;) (hat die Leerzeichen einfach gelöscht)
    Ist dies möglich, ohne jetzt jede Zeile einzeln untereinander zu zeichnen und mit (pictureboxwidth / 2) - (stringweite / 2) zu positionieren?

    Wäre über Ideen und Ratschläge sehr dankbar! :)
    OK. Also, anders gehts dann wohl nicht, oder? Oder Weiß jemand wie das bei der RichtextBox gemacht wird?
    Weil, wenn die Texte sehr lang werden, wollte ich nicht, dass da dann immer erst mal nach Zeilenumbrüchen gesucht wird, dann die Stringweite (mit MeasureString) ermittelt wird und einzeln entspr. gezeichnet wird.
    Für den Fall, dass Dir auch eine TextBox ausreicht, kannst Du es gleich so machen:

    VB.NET-Quellcode

    1. TextBox1.TextAlign = HorizontalAlignment.Center
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!