0

文字列「5」を画面に描画したいとします。Paintこのためのオブジェクトをデフォルトの Android フォントで作成しました。

次のようなテキストの測定方法を知っています: mTextPaint.measureText(...params...)float 形式でテキストの幅を取得します。

しかし今、私はこれを逆にしたいと思っています。文字 ('5') が使用できる最大幅 (フロート) を計算しました。

文字列または文字 ("5")、テキストを描画するためのPaintオブジェクト、および文字が占めることを許可する最大幅を使用して、適切な textSize を見つけるにはどうすればよいですか?

4

1 に答える 1

1
String text = "5";
float fitw = 100.0f;
mTextPaint.setTextSize(fitw * (mTextPaint.getTextSize() / mTextPaint.measureText(text)));
于 2012-12-28T12:59:13.973 に答える