
String lineToAdd = currentLine.Substring(0, currentLine.Adjust Row Height and Column Width in Word Tables: Overview The edited code looks like: public static List WrapTextWithGraphics(Graphics g, string original, int width, Font font) Also there was a bug: the last line was not added to the list, when the condition of the if-block in the for-loop was not reached. But I made some changes so that you can give the method the required parameters. This worked for me much better, as it wraps my text right. New Typeface(fontFamily), emSize, .Black) ĪctualLine.Remove(actualLine.Length - wordWithSpace.Length, wordWithSpace.Length) īecause I'm working with a Graphics object I tried solution. StringBuilder actualLine = new StringBuilder() įormattedText formattedWord = new FormattedText(wordWithSpace,

String originalWords = text.Split(new string , So here is an edited version: public static List WrapText(string text, double pixels, string fontFamily, float emSize) NET 3.5 there isn't any Clear() function for StringBuilder objects.

It always extends the given width of my line (maybe because I use it in combination with a Graphics object to draw the text in my image).įurthermore his answer (and related ones) just work for >. I tried as-cii's answer, but it didn't work in my case as expected. I'm wanted to wrap text to draw it afterwards in my image. String lineToAdd = currentLine.Substring(0, currentLine.Length - moveback) Exceeded length, back up to last space Graphics graphics = Graphics.FromHwnd(this.Handle) Private List GetWordwrapped(string original) Using System.Drawing // For Graphics and Font

Here is some sample code using the MeasureString() method to do roughly what you asked for: using System If you need a very precise width, I think you have to use the MeasureCharacterRanges() method. You can get the (approximate) width of a string from the class using the MeasureString() method. Every line will have a defined width.įor example, I would get this result if I word wrap it to an area of 120 pixels in width: I am trying to word wrap a string into multiple lines.
