BreakIterator iter = BreakIterator.getLineInstance();
iter.setText(s);
StringBuilder res = new StringBuilder(initialIndent);
StringBuilder sb = new StringBuilder();
int currentWidth = initialOffset + initialIndent.length();
for (int start = iter.first(), end = iter.next(); end != BreakIterator.DONE; start = end, end = iter
.next()) {
String sub = s.substring(start, end);
int subwidth = textWidthCounter.width(sub);
currentWidth += subwidth;
if (currentWidth > width) {