2010-02-24 12 views
5

Grundsätzlich ist mein Problem, dass ich eine Zeichenfolge umbrechen muss, wenn ich will. Nicht wenn .NET will. Ich verstehe, dass die DrawString-Methode automatisch einen Zeilenumbruch durchführt, wenn ich ihr ein Rechteck gebe, in dem sie zeichnen kann. Ich muss kontrollieren, wann es Word umwickelt. Also sage ich, dass meine Zeichenkette, die ich zeichnen möchte, Test 1234 ist. Und ich möchte Text in einer neuen Zeile zeichnen, wenn ich ein Leerzeichen sehe. Also würde es in diesem Fall zwei Zeilen haben - Testen und 1234. Ich vermute, ich brauche eine Kombination aus der Größe der Zeichenfolge (um meine Grenzen zu passen) und mehrere Drawstring-Methodenaufrufe, um jede Zeile zu zeichnen. Das Problem ist, dass ich nicht wirklich weiß, wie ich das machen soll. Ich bin ein Neuling, wenn es um GDI + geht.Grafik DrawString mit kontrollierten Word Wrap

Antwort

5

Sie könnten die Leerzeichen durch Zeilenumbrüche ersetzen und dann die Zeichenfolge zeichnen.

string converted = text.Replace(" ", System.Environment.NewLine); 
+0

Ja, ich dachte nicht, dass dies mit der MeasureString() -Methode funktionieren würde. Ich nahm an, dass ich denken würde, dass es immer noch eine 1-zeilige Saite ist und messe es so. Vielen Dank. – Travyguy9