anchor.diff:  Image drawStringWrap(Image image, BitmapFont font, int x, int y, String string,
       {int color = 0xffffffff}) {
   
  -  // find max height
  -  var stringHeight = 0;
  -  final chars = string.codeUnits;
  -  for (var c in chars) {
  -    if (!font.characters.containsKey(c)) {
  -      continue;
  -    }
  -    final ch = font.characters[c]!;
  -    if (ch.height + ch.yoffset > stringHeight) {
  -      stringHeight = ch.height + ch.yoffset;
  -    }
  -  }
  -  stringHeight = (stringHeight * 1.05).round();
  -
  +  var stringHeight = findStringHeight(font, string);
     var words = string.split(new RegExp(r"\s+"));
     var subString = "";
     var x2 = x;
  
positive.code:     }
    }
  
    final chars = string.codeUnits;
    for (var c in chars) {
      if (!font.characters.containsKey(c)) {
        x += font.base ~/ 2;
        continue;
  
negative.code: 
    return drawString(image, font, xPos, yPos, string, color: color);
  }
  
  int findStringHeight(BitmapFont font, String string) {
    var stringHeight = 0;
    final chars = string.codeUnits;
    for (var c in chars) {
      if (!font.characters.containsKey(c)) {
        continue;
      }
      final ch = font.characters[c]!;
      if (ch.height + ch.yoffset > stringHeight) {
        stringHeight = ch.height + ch.yoffset;
      }
    }
    return (stringHeight * 1.05).round();
  }
  