canvas drawtext with multiline
android, canvas, drawtext
Solution
You need to use `StaticLayout`:
TextPaint mTextPaint=new TextPaint();
StaticLayout mTextLayout = new StaticLayout("my text\nNext line is very long text that does not definitely fit in a single line on an android device. This will show you how!", mTextPaint, canvas.getWidth(), Alignment.ALIGN_NORMAL, 1.0f, 0.0f, false);
canvas.save();
// calculate x and y position where your text will be placed
textX = 100;
textY = 100;
canvas.translate(textX, textY);
mTextLayout.draw(canvas);
canvas.restore();
Problem
I am developing a image commenting application. I draw text in canvas with `canvas.drawText(text, x, y, imgPaint);` This appears in a single line. I need to break the line to multiline when the text crosses the canvas width Thanks in advance