余白をテキストのピクセル単位でデザイン要求してくるデザイナー、絶対に許さない。
解説
テキストのベースラインから、上の余白(top, ascent)や下の余白(descentやbottom)をピクセル単位で取得することができます。この値を使って、数ピクセル単位の余白のズレも調整することができます。
val textPaint = Paint(Paint.ANTI_ALIAS_FLAG)
textPaint.setTextSize(12)
// FontMetricsの取得
val fontMetrics : FontMetrics = textPaint.getFontMetrics()
val topY = fontMetrics.top
val ascentY = fontMetrics.ascent
val descentY = fontMetrics.descent
val bottomY = fontMetrics.bottom
正直に言います。もう二度とやりたくありません。