При использовании методов Canvas
и drawText()
я вижу другой рендеринг на Android 4.2.1.
Ниже 4.2:
Для Android 4.2.1 (Nexux 7) я получаю:
Как вы можете видеть текст Потребление очень плотно. Кажется, это проблема кернинга, представленная в 4.2.1. Краска, используемая для рисования текста, ничего особенного:
titlePaint = new Paint();
titlePaint.setAntiAlias(true);
titlePaint.setColor(0xffffffff);
titlePaint.setTextSize(0.125f);
titlePaint.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
titlePaint.setTextAlign(Align.CENTER);
titlePaint.setLinearText(true);
Если я не использую titlePaint.setLinearText(true)
, я получаю странный результат в 4.2.1, как вы можете видеть там:
Android 4.2 на Nexus 7: canvas.drawText() работает неправильно
EDIT:
Это странное поведение было сообщено команде Android: http://code.google.com/p/android/issues/detail?id=39755, но это все еще не является официальной проблемой.
РЕДАКТИРОВАТЬ (2):
Некоторые слухи утверждают, что проблема заключается в текстовом формате < 1.0f...