public static TextBlock createTextBlock(string text, Font font, Paint paint) { if (text == null) { string str = "Null 'text' argument."; Throwable.__\u003CsuppressFillInStackTrace\u003E(); throw new IllegalArgumentException(str); } else { TextBlock textBlock = new TextBlock(); string text1 = text; int num1 = String.instancehelper_length(text) > 0 ? 1 : 0; while (num1 != 0) { int num2 = String.instancehelper_indexOf(text1, "\n"); if (num2 > 0) { string text2 = String.instancehelper_substring(text1, 0, num2); if (num2 < String.instancehelper_length(text1) - 1) { textBlock.addLine(text2, font, paint); text1 = String.instancehelper_substring(text1, num2 + 1); } else num1 = 0; } else if (num2 == 0) { if (num2 < String.instancehelper_length(text1) - 1) text1 = String.instancehelper_substring(text1, num2 + 1); else num1 = 0; } else { textBlock.addLine(text1, font, paint); num1 = 0; } } return textBlock; } }
public static TextBlock createTextBlock(string text, Font font, Paint paint, float maxWidth, int maxLines, TextMeasurer measurer) { TextBlock textBlock = new TextBlock(); BreakIterator lineInstance = BreakIterator.getLineInstance(); lineInstance.setText(text); int num1 = 0; int num2 = 0; int num3 = String.instancehelper_length(text); label_1: while (num1 < num3 && num2 < maxLines) { int num4 = TextUtilities.nextLineBreak(text, num1, maxWidth, lineInstance, measurer); if (num4 == -1) { textBlock.addLine(String.instancehelper_substring(text, num1), font, paint); return textBlock; } else { textBlock.addLine(String.instancehelper_substring(text, num1, num4), font, paint); ++num2; num1 = num4; while (true) { if (num1 < String.instancehelper_length(text) && (int) String.instancehelper_charAt(text, num1) == 10) ++num1; else goto label_1; } } } if (num1 < num3) { TextLine lastLine = textBlock.getLastLine(); TextFragment lastTextFragment = lastLine.getLastTextFragment(); string text1 = lastTextFragment.getText(); string text2 = "..."; if (String.instancehelper_length(text1) > 3) text2 = new StringBuffer().append(String.instancehelper_substring(text1, 0, String.instancehelper_length(text1) - 3)).append("...").toString(); lastLine.removeFragment(lastTextFragment); TextFragment.__\u003Cclinit\u003E(); TextFragment fragment = new TextFragment(text2, lastTextFragment.getFont(), lastTextFragment.getPaint()); lastLine.addFragment(fragment); } return textBlock; }