Android Center texto sobre lienzo

Estoy tratando de mostrar un texto usando el código de abajo. El problema es que el texto no está centrado horizontalmente. Cuando establezco las coordenadas paradrawText, establece la parte inferior del texto en esta posición. Me gustaría que el texto se dibuje de manera que el texto se centre también horizontalmente.

Esta es una foto para mostrar mi problema aún más:

@Override
protected void onDraw(Canvas canvas) {
    // TODO Auto-generated method stub
    super.onDraw(canvas);
    //canvas.drawRGB(2, 2, 200);
    Paint textPaint = new Paint();
    textPaint.setARGB(200, 254, 0, 0);
    textPaint.setTextAlign(Align.CENTER);
    textPaint.setTypeface(font);
    textPaint.setTextSize(300);
    canvas.drawText("Hello", canvas.getWidth()/2, canvas.getHeight()/2  , textPaint);
}

Respuestas a la pregunta(8)

Su respuesta a la pregunta