Android canvas 平局

Android canvas draw

如何在canvas两个相对定位的文本上绘制? 示例:

User: John Doe
Status: foreigner

使用代码生成文本 "one on top of another" 问题:

Canvas canvas = page.getCanvas();
    int titleBaseLine = 72;
    int leftMargin = 54;
    Paint paint = new Paint();
    paint.setColor(Color.BLACK);
    paint.setTextSize(40);
    canvas.drawText(user, leftMargin, titleBaseLine, paint);
    canvas.drawText(userName, leftMargin, titleBaseLine, paint);

最终答案:

int titleBaseLine = 60;
int leftMargin = 20;
Paint paint = new Paint();
paint.setColor(Color.BLACK);
paint.setTextSize(40);
Paint paintBold = new Paint();         
paintBold.setTypeface(Typeface.create(Typeface.DEFAULT,Typeface.BOLD));
paintBold.setColor(Color.BLACK);
paintBold.setTextSize(40);

canvas.drawText(userText, leftMargin + leftMargin, titleBaseLine, paintBold);
canvas.drawText(username, leftMargin + paintBold.measureText(userText) + leftMargin + 10, titleBaseLine, paint);
canvas.drawText(statusText, leftMargin + leftMargin, titleBaseLine * 2, paintBold);
canvas.drawText(statusName, leftMargin + paintBold.measureText(statusText) + leftMargin + 10, titleBaseLine * 2, paint);