2012-03-24 10 views
5

アラビア語のテキストでは、Paint.measureTextが正確ではありません。ここに私が試みたものがあります:Android TextViewアラビア語のテキスト

私はTextView tv1を持っています。

tv1.getWidth();は大丈夫です。 tv1.getPaint().measureText("المؤلف : عبدالرحمن ابن أبي بكر أبو الفضل السيوطي");は502を与え、これは画面の幅よりも大きい。

テキストが線幅の約80%を占めているため、結果が不正です!結果は約400になるはずです。

ありがとうございます。

+0

こんにちは、私も同じ種類の問題があります。もしあなたがこれを解決するなら、私を助けてください。 – Raj

+0

私も同じ問題があり、問題はGalaxy Tabにのみ表示されます! Galaxy S3でうまく動作します! – AVEbrahimi

+0

私は同じ問題に直面しました。フォントを変更してみてください。 –

答えて

0

今日はこの問題に直面しました。すべてが期待どおりに機能していて、テキストにّ ِ ُ َの文字のようなアラビア語の母音が含まれている場合は、幅が別々の文字として計算され、アンドロイドPaint.measureTextはそれらの文字を考慮する必要がないことを認識していません余分な幅を追加することはありませんし、他の文字の上と下に描画されます。

解決策は次のとおりです。まず、テキストからこれらの文字を削除してテキストを測定する必要があります。

関連する問題