2016-09-17 2 views
0

で画面上のマイナス:センター私は次のコードを使用して、画面上のマイナス記号を中央にしようとしていたJava

text = "-"; 
textPosition = new Point(); 
Rect bounds = new Rect(); 
paint.getTextBounds(text, 0, text.length(), bounds); 
paint.setTextAlign(Paint.Align.CENTER); 
textPosition.x = (int) (myArea.left + myArea.width()/2); 
textPosition.y = (int) (myArea.top + myArea.height()/2 + bounds.height()/2); 
canvas.drawText(text, textPosition.x, textPosition.y, paint); 

「テキスト」とは、例えば他の何か(の場合、このコードは魔法のように動作しますプラス記号)が表示されますが、この場合マイナス記号は画面上で高すぎます。

編集: これは、4つの異なる演算子の結果です。

Operators, each centered in their own screen area

そして...面白いことに、私はこれらの演算子を表示するには、私自身のフォントを作成したこと、です。だから私はそれが正しく中心に置かれるべきであることを知っている。

PSは:マイナス記号は最悪ですが、今、私はそれを見ていることを、すべてのオフ彼らは、少しオフに思われる...

+0

現在の画面と予想される画面を提供しますか? –

+0

画面共有が役立つかどうか分かりません。問題は、マイナスが垂直にセンタリングされていないことです。ちなみに、 "_"の場合、正しくセンタリングされます。私が望むのは、その中央に " - "が付いた素敵な小さな箱です。 – MWB

+0

@NikolasCharalambidis:説明を更新し、スクリーンショットを追加しました。希望(または他の誰か)あなたが助けることができます! – MWB

答えて

0

わかりました、私はそれを修正しました。コードを変更するのではなく、フォントを変更します。私は現在、ベースライン上のすべての文字を整列しており、それは動作するようです。

関連する問題